我应该使用em还是px?

时间:2009-12-19 12:19:17

标签: css

我正在开始一个新的Web项目,我想知道是否使用em或px进行布局和字体大小。

尽管大多数浏览器现在支持文本和图像缩放,无论字体是在px还是em中定义,社区对使用em的支持仍然很强。

但是我使用em看到了2个问题。

首先是大型和宽型显示器的问题 - 通常会导致文本在屏幕上运行英里和英里,这在您阅读页面时非常难以阅读。

其次,如果您的网站需要集成Flash组件,该怎么办?如果您希望Flash组件完全适合在em中定义的div(例如站点的主容器)中,那么您将如何处理它,因为Flash组件是用px测量的?

是否有令人信服的理由使用EM而不是PX?

4 个答案:

答案 0 :(得分:23)

  

首先是大和的问题   宽监视器 - 通常会导致这种情况   穿过英里和英里的文本   屏幕,这是非常困难的   在您阅读页面时阅读。

使用empx,您仍然可以为布局定义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)

既然现代桌面浏览器缩放pxem,我认为讨论应该转移到移动设备上如何使用其中一个或另一个比如iPad,iPhone等。