太空训练鞋

太空训练鞋,经典时尚的外观
This is an unpublished draft preview that might include content that is not yet approved. The published website is at w3.org/WAI/.
该志愿翻译可能不能准确地反映出英文原版内容。
将<label>
元素的for
属性关联到表单控件的id
属性,或者使用WAI-ARIA属性。在特定情况下,视觉上隐藏<label>
元素是允许的,但在大多数情况下,需要使用label元素来帮助所有用户理解所需的输入内容。
确保为所有信息性和功能性图片添加图像替代文本。对装饰性图片使用空的替代文本alt=“”
,或将其包含在 CSS 中。图片替代文本通常由负责书面内容的人员提供。
在 html
元素中使用 lang
属性来指明每个页面的主要语言,例如 <html lang=“en”>
。当特定元素的语言与页面其他部分不同时,可在该元素上使用 lang
属性。
为标题、列表、表格等使用语义化的标记。HTML5 提供了许多元素,如 <nav>
和 <aside>
,以便更好地组织内容。
WAI-ARIA 角色可以提供额外的含义,例如,使用 role=“search”
来标识搜索功能。
与设计人员和内容撰写人员合作,就含义达成一致,然后统一使用。
<form action="#" method="post">
<div role="search">
<label for="search">查询</label>
<input type="search" id="search" aria-describedby="search-help">
<div id="search-help">您可以通过编号或者姓名查询客户信息</div>
<button type="submit">提交</button>
</div>
</form>
提供清晰的说明、错误信息和通知,来帮助用户填写网站上的表单。当出现错误时:
在处理用户输入时,对格式尽可能宽容。例如,接受包含空格的电话号码,并根据需要删除空格。
例如, (02) 1234 1234
<label for="phone">电话</label>
<input id="phone" name="phone" type="tel"
pattern="^(\(?0[1-9]{1}\)?)?[0-9 -]*$"
aria-describedby="phone-desc">
<p id="phone-desc">例如, (02) 1234 1234</p>
确保代码中元素的顺序与所展示信息的逻辑顺序一致。检查的方法之一是移除 CSS 样式并检查内容的顺序是否合理。
太空训练鞋,经典时尚的外观
<img src="images/trainer.png" alt="...">
<h3>太空训练鞋</h3>
<p>太空...</p>
<a href="...">加入购物车</a>
查看完整代码示范
<article class="product">
<img alt="紫色高帮运动鞋,白色鞋带,脚踝外侧有白色空点,白色鞋头帽" src="images/trainer.png">
<h3 class="name">太空训练鞋</h3>
<p class="desc">太空训练鞋,经典时尚的外观</p>
<p class="buy"><a href="javascript:return false"><svg class="icon"><use xlink:href="#cart-plus"/></svg> 加入购物车</a></p>
</article>
<h3>太空训练鞋</h3>
<img src="images/trainer.png" alt="...">
<p>太空...</p>
<a href="...">加入购物车</a>
查看完整代码示范
<article class="product">
<h3 class="name">太空训练鞋</h3>
<img alt="紫色高帮运动鞋,白色鞋带,脚踝外侧有白色空点,白色鞋头帽" src="images/trainer.png">
<p class="desc">太空训练鞋,经典时尚的外观</p>
<p class="buy"><a href="javascript:return false"><svg class="icon"><use xlink:href="#cart-plus"/></svg> 加入购物车</a></p>
</article>
使用响应式设计,使显示内容适应不同的缩放状态和视窗尺寸,如移动设备和平板电脑。 当字体大小增加至少200%时,应避免水平滚动并防止内容被剪切。 使用渐进增强技术,确保无论使用何种技术,都能使用核心功能和内容。
/* 在窄视窗上,使导航全宽 */
@media screen and (min-width: 25em) {
#nav {
float: none;
width: auto;
}
#main {
margin-left: 0;
}
}
/* 在较宽的视窗中,将导航放在左侧 */
@media screen and (min-width: 43em) {
#nav {
float: left;
width: 24%;
}
#main {
margin-left: 27%;
}
}
使用 WAI-ARIA,为自定义组件(如手风琴组件accordions和自定义按钮)提供功能和状态信息。
例如,role=“navigation”
和 aria-expanded=“true”
。
要实现此类组件的行为,如展开和折叠内容或组件如何响应键盘事件,还需要额外的代码。
<nav aria-label="主导航" role="navigation">
<ul>
<li><a href="...">首页</a></li>
<li><a href="...">商店</a></li>
<li class="has-submenu">
<a aria-expanded="false" aria-haspopup="true" href="...">太空熊</a>
<ul>
<li><a href="...">太空熊 6</a></li>
<li><a href="...">太空熊 6 Plus</a></li>
</ul>
</li>
<li><a href="...">火星车</a></li>
<li><a href="...">联系</a></li>
</ul>
</nav>
考虑键盘操作,尤其是在开发像菜单,鼠标悬浮信息,收缩件或者媒体播放器等交互元素。
对于默认不支持Tab键的 <div>
,<span>
等元素,当它们被用来当作交互元素时,则可以添加 tabindex="0"
属性使键盘可以焦距到它们上面,同时使用脚本捕捉和反应键盘事件。
var buttonExample = document.getElementById('example-button');
buttonExample.addEventListener('keydown', function(e) {
// 当回车键按下时切换菜单状态
if(e.keyCode && e.keyCode == 13) {
toggleMenu(document.getElementById('example-button-menu'));
}
});
buttonExample.addEventListener('click', function(e) {
// 当鼠标点击时切换菜单状态
toggleMenu(document.getElementById('example-button-menu'));
});
验证码会给用户造成很多阻碍。除了验证码,还有其他更易使用的用户输入验证方式,比如自动检测或者界面交互验证。 如果一定需要用到验证码,确保它是容易理解的,另外提供其他可选方案,比如:
这些提示是Web无障碍需要考虑的一些事项。以下资源可以帮助您了解无障碍的重要性,以及让残疾人更容易访问Web的指南。
请通过电子邮件将您的想法、建议或意见分享到公共存档列表wai@w3.org或通过GitHub提交意见
This is an unpublished draft preview that might include content that is not yet approved. The published website is at w3.org/WAI/.