@vgmqt/access v2.0.0
AccEss: Accessible Essentials
Content
What is this?
How it works
Roadmap
This project's structure
License
What is this?
AccEss is a lightweight pack of accessible customizable elements for web development such as Select, Tabs, Checkboxes, etc. It built on HTML5 basic elements and behave itself the exact same way they do.
How it works
- Download (through
yarn/npmor manually) and include:
JavaScript
You can choose what you need:
AccessEssentials.js contains all AccEss elements;
In the Separated folder you can find every available AccEss element and include them separately, if you want to use only some of them (or only one).
CSS
You can choose what you need:
AccessEssentials.basic.css contains all AccEss elements basic styles, that are necessary for JavaScript to work;
In the Separated folder you can find styles for every available AccEss element and include them separately, if you want to use only some of elements (or only one).
.styled.css files have extra styles for elements, so they would look more attractive.
You need to add either .basic.css or .styled.css styles (.styled.css files already have .basic.css styles inside).
- Create a markup, that would look like this:
- For AccessSelect (single option):
<div class="access-select">
<div class="access-select__option access-select__chosen-option">Choose an option</div>
<ul class="access-select__list">
<li class="access-select__item">
<input class="access-select__option access-select__input" id="option1" type="radio" name="Select (single option)" value="Option #1">
<label class="access-select__option access-select__label" for="option1">Option #1</label>
</li>
<li class="access-select__item">
<input class="access-select__option access-select__input" id="option2" type="radio" name="Select (single option)" value="Option #2">
<label class="access-select__option access-select__label" for="option2">Option #2</label>
</li>
<li class="access-select__item">
<input class="access-select__option access-select__input" id="option3" type="radio" name="Select (single option)" value="Option #3">
<label class="access-select__option access-select__label" for="option3">Option #3</label>
</li>
<li class="access-select__item">
<input class="access-select__option access-select__input" id="option4" type="radio" name="Select (single option)" value="Option #4">
<label class="access-select__option access-select__label" for="option4">Option #4</label>
</li>
<li class="access-select__item">
<input class="access-select__option access-select__input" id="option5" type="radio" name="Select (single option)" value="Option #5">
<label class="access-select__option access-select__label" for="option5">Option #5</label>
</li>
</ul>
</div>- For AccessSelect (multiple option):
<div class="access-select access-select_multiple">
<div class="access-select__option access-select__chosen-option">Choose an option</div>
<ul class="access-select__list">
<li class="access-select__item">
<input class="access-select__option access-select__input" id="option1" type="checkbox" name="Select (single option)" value="Option #1">
<label class="access-select__option access-select__label" for="option1">Option #1</label>
</li>
<li class="access-select__item">
<input class="access-select__option access-select__input" id="option2" type="checkbox" name="Select (single option)" value="Option #2">
<label class="access-select__option access-select__label" for="option2">Option #2</label>
</li>
<li class="access-select__item">
<input class="access-select__option access-select__input" id="option3" type="checkbox" name="Select (single option)" value="Option #3">
<label class="access-select__option access-select__label" for="option3">Option #3</label>
</li>
<li class="access-select__item">
<input class="access-select__option access-select__input" id="option4" type="checkbox" name="Select (single option)" value="Option #4">
<label class="access-select__option access-select__label" for="option4">Option #4</label>
</li>
<li class="access-select__item">
<input class="access-select__option access-select__input" id="option5" type="checkbox" name="Select (single option)" value="Option #5">
<label class="access-select__option access-select__label" for="option5">Option #5</label>
</li>
</ul>
</div>You can add some wrappers or change some things, but it is recommended to keep all classes and elements as is. You can check dev folder for source files to know what exactly you can or can not change. You can even change some JavaScript code and CSS styles to match your situation more, but do not forget about accessibility, the very thing why AccEss exists.
Call the
AccessEssentials();function or, if you downloaded and added specific elements files, call a dedicated function. For example, for AccessSelect it will beAccessSelect();.Test your element or elements with mouse clicks and
Tabnavigation.
Roadmap
Select (single option)AccessSelect ✔️Select (multiple options)AccessSelect ✔️- Tabs
- Checkboxes
- Radio buttons
- TBD
This project's structure
This project's structure is built using Gulp tasker.
License
Copyright © 2020.
Licensed under the MIT license.