我为我的网页找到了一个不错的字体,但是在默认16px
(= 1em
) 大小下它有点太小了 imo,所以我想将正文字体大小设置得更大一点,在17px
.
可以在元素上执行此操作,body
还是应该将所有段落的字体大小设置为1.0625em
,这是根据基本大小17px
计算的16px
?什么对可访问性更好?
我为我的网页找到了一个不错的字体,但是在默认16px
(= 1em
) 大小下它有点太小了 imo,所以我想将正文字体大小设置得更大一点,在17px
.
可以在元素上执行此操作,body
还是应该将所有段落的字体大小设置为1.0625em
,这是根据基本大小17px
计算的16px
?什么对可访问性更好?
您不能假设“基本尺寸”是 16 像素。虽然它可能是大多数桌面 Web 浏览器的默认值,但用户可以更改此值。
如果您的问题是body
vs. p
,请注意通常还有其他元素p
可能包含通常应该具有相同大小的文本。例如li
, dt
,dd
或者div
对于不适合的行 ,p
像这样的表单元素input
。
访问者最好的方法是将主要内容(即文本正文)的字体大小设置为1em
(resp. font-size:medium;
resp. font-size:100%;
),因为这是用户可能在浏览器中故意设置的字体大小。当然,从那里再高一点或低一点应该没有问题。
对于可访问性而言,这两种选择都不是更好或更坏。
桌面浏览器通常默认为 16px for 1em,用户可以在某些系统上更改此设置。但是,缩放是桌面浏览器(IE、Firefox、Safari、Opera 和 Chrome)上默认的“让事情变大”控件。缩放使一切都按比例放大,而不仅仅是文本。(另请参阅为什么缩放对可访问性有好处。)
因此,为正文或段落设置大小实际上是关于管理样式的问题,而不是可访问性。
将正文大小设置为 1em:
body {font-size: 1em;}
p {font-size: 1em; } /* 16px */
实际上什么也没做,因为它默认是 1em。如果不是 16px,因为用户更改了它,那么您不知道它是什么。
如果其他样式使用相对单位,将body 设置为17px
会略微增加字体大小:
body {font-size: 20px;}
p {font-size: 1em; } /* 20px */
如果您想让所有文本都相对于一个值,这很有用。注意:rem
如果您不必担心 IE<9,则作为单元使用会更好。
对于确实设法设置不同默认字体大小的用户,无论您使用哪个选项,都应该覆盖正文样式并按比例增加内容。唯一需要注意的是设置一个较大的默认相对大小:
/* bad example for people who adjust their text size to 20px */
body {font-size: 150%;}
h2 {font-size: 2em; } /* 60px */
我遇到过这样的情况,改变默认文本大小的人抱怨文本有多大!
我倾向于将正文设置为16px
然后rem
用于所有文本大小样式。用户可以缩放或调整大小,一切按比例进行。