一、Accessibility
1. Why Accessibility
- Web Accessibility(网络无障碍辅助)用于创建每个人都能使用的网站的设计
- Accessibility 的支持是辅助技术正确解读网页的必要条件
- React 完全支持构建 accessible 网站,通过使用标准的 HTML 技术
2. 标准和指南
<input type="text" aria-label={labelText} aria-required="true" onChange={onchangeHandler} value={inputValue} name="name"/>
3. 语义化的 HTML
import React, { Fragment } from 'react';function ListItem({ item }) { return ( <Fragment> <dt>{item.term}</dt> <dd>{item.description}</dd> </Fragment> );}function Glossary(props) { return ( <dl> {props.items.map(item => ( <ListItem item={item} key={item.id} /> ))} </dl> );}function Glossary(props) { return ( <dl> {props.items.map(item => ( // Fragments should also have a `key` prop when mapping collections <Fragment key={item.id}> <dt>{item.term}</dt> <dd>{item.description}</dd> </Fragment> ))} </dl> );}function ListItem({ item }) { return ( <> <dt>{item.term}</dt> <dd>{item.description}</dd> </> );}
4. Accessible 表单
<label htmlFor="namedInput">Name:</label><input id="namedInput" type="text" name="name"/>