我正在开始一个新的Web项目,我想知道是否使用em或px进行布局和字体大小。
尽管大多数浏览器现在支持文本和图像缩放,无论字体是在px还是em中定义,社区对使用em的支持仍然很强。
但是我使用em看到了2个问题。
首先是大型和宽型显示器的问题 - 通常会导致文本在屏幕上运行英里和英里,这在您阅读页面时非常难以阅读。
其次,如果您的网站需要集成Flash组件,该怎么办?如果您希望Flash组件完全适合在em中定义的div(例如站点的主容器)中,那么您将如何处理它,因为Flash组件是用px测量的?
是否有令人信服的理由使用EM而不是PX?
答案 0 :(得分:23)
首先是大和的问题 宽监视器 - 通常会导致这种情况 穿过英里和英里的文本 屏幕,这是非常困难的 在您阅读页面时阅读。
使用em
或px
,您仍然可以为布局定义width
(或max-width
)。
其次,如果您的网站需要,该怎么办? 集成Flash组件?如果你 希望Flash组件适合 完全在div内(例如主要的 定义的网站容器 在em中,你怎么会这样做呢? 闪存组件以px?
进行测量
为了完全符合,你仍然可以使用100%width
,或者我可能不理解你的观点。
理论上,使用em
代替px
可以根据用户偏好轻松调整布局。
但是今天,现代浏览器可以调整px
布局以及em
布局的大小,因此它可能与几年前没有那么相关。
答案 1 :(得分:2)
当您使用相对大小而不是固定字体时,主要的好处是(光学禁用)访问者可以放大/缩小包含字体的网页。这都是关于web accessibility。
答案 2 :(得分:2)
px与您提到的具有不同显示器尺寸的em具有相同的问题。对于px而言,在显示器上调整大小(即具有特定点间距的像素)时,也会更多地考虑像素。由于ems(和%)与显示器没有固定的大小关系,因此人们不会陷入同一个陷阱。 (与所有图像像素一样,px与显示像素并没有固定的1:1关系,但人们通常会这样想。)
在对齐替换元素时,无论是Flash还是图像,px确实更合适(尽管Flash使用纯矢量图形时,可以使用您想要的任何单位很好地缩放到任何大小)。就个人而言,我使用任何单位更自然的元素类型来确定定位和尺寸:px for images&电影,em代表文字,%代表视口。
答案 3 :(得分:1)
既然现代桌面浏览器缩放px
和em
,我认为讨论应该转移到移动设备上如何使用其中一个或另一个比如iPad,iPhone等。