javascript - 我可以禁用用户字体大小配置吗?

标签 javascript html css

我正在制作一个自适应网站,当用户有一些奇怪的字体大小配置时(对于视觉问题等)设计以一种糟糕的方式中断......显然我不想忘记可访问性......那么:有没有办法知道用户何时试图强制调整字体大小、禁用它并为其提供不同的样式?

最佳答案

通常,您在页面上的字体大小设置会覆盖浏览器设置中的设置,除非您在设置 font-size 时使用 %em >,在这种情况下,它们可能与浏览器设置中设置的大小有关(具体取决于您如何设置大小)。

这意味着如果您在 CSS 中设置了 body { font-size: 9px } 并且视障用户在正常 Chrome 设置中选择了最大尺寸(对应于 24px),则用户设置被覆盖并且使用了难以辨认的大小。这是用户不经常更改浏览器字体大小设置本身的原因之一:单独使用时,它们的效果相当有限。

但是,如果用户将浏览器设置为忽略网页上指定的字体大小(例如在 IE 中通过辅助功能设置,这是可能的),那么无论您做什么,都会使用浏览器设置中的字体大小。 (页面内的字体大小可能仍然会有所不同,例如,由于使用 small 标记或标题元素,根据浏览器对某些元素的默认设置,但是页面上的任何 CSS 字体大小设置都将被有效禁用。 )

类似的注意事项也适用于最小字体大小设置,这些设置相当常见,甚至可以通过浏览器的出厂设置进行设置。它们在正常的 CSS 级联产生一定尺寸后生效——如果该尺寸小于最小值集,则使用最小值。

有间接的方法可以尝试找出浏览器实际使用的字体大小,例如通过使用 clientHeight 属性获取元素的高度。如果您对具有 line-height: 1 的元素执行此操作,您通常会获得实际使用的字体大小。但是你不能禁用它;浏览器设置的本质几乎是覆盖网页上无法覆盖的设置。

关于javascript - 我可以禁用用户字体大小配置吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23692328/

相关文章:

javascript - 试图让我的照片幻灯片不断循环播放所有照片

javascript - HTML 5 Canvas : detect long click

html - 如何使用 CSS 从 li 中删除单词?

javascript - javascript中Java的final相当于什么

javascript - 更改图像/svg 以在网页上正确显示横向或纵向

android - (如何)我可以在没有网络字体的情况下仅通过 css 在浏览器中使用 native Android 字体吗?

html - 如何在 h :panelgrid 中的两个特定列之间留出空间

javascript - 使用 $scope 来查看 this

javascript - 如何编写一个根据输入变量名称自动获取数据值的方法

javascript - 数据列表如何获取选定的名称而不是值