【发布时间】:2016-03-29 20:54:40
【问题描述】:
我正在努力使我的网站更易于访问。我遇到的问题之一是文本/背景对比。根据规范,可以放置一个启用高对比度模式的高对比度开关。为了满足这个要求,我想在我的网站上放置一个按钮或开关,当它被激活时,会触发一个扫描文档以查找background:low-contrast 实例并将该属性替换为background:high-contrast 的功能。
我已经完成了 ng-class="{'high-contrast':highContrast}" 和
<button
ng-controller="HighContrastController"
ng-click="$root.highContrast=!$root.highContrast"
class="high-contrast-switch">
<i class="fa text-white fa-adjust">
<span class="sr-only">High Contrast Mode</span>
</i>
</button>
与
function HighContrastController($rootScope) {
$rootScope.highContrast = false;
}
但我认为我更愿意在控制器中完成这一切,这将使我能够在全局范围内对所有视图应用高对比度,而不会使我的部分逻辑混乱。
我可以做到的一种方法是忘记 high-contrast 类,并应用 light 和 dark 类。 high contrast.css 在通过控制器加载时会对这些类应用高对比度颜色。是否有角度的方式来做到这一点,或者我应该依靠常规的 javascript 来加载 highcontrast.css?
【问题讨论】:
标签: javascript css angularjs accessibility