分类

链接

2015 年 11 月
 1
2345678
9101112131415
16171819202122
23242526272829
30  

近期文章

热门标签

新人福利,免费薅羊毛

现在位置:    首页 > 前端 > 正文
共享办公室出租
CSS里padding和width的问题
前端 暂无评论 阅读(1,113)

最近遇到一个问题:padding在ie10+,chrome,ff上不占宽度,在IE9下面占宽度。试了很多办法无解,最后百度得知一解决方法。下面详细说明:

情况一

在一个block元素上使用padding后元素实际的宽度会增加,这是一个常识。
这本来是一个很浅显的道理,但许多初学者考虑的时候却觉得很怪异。
我这里按自己的解释来说明一番。
给个假设情况:一个width:10px的元素,padding:10px;
那么实际宽度就是width+padding-left+padding-right=30px;
假如说padding对宽度无影响,那么width是10px;但是padding在横向的宽度是20px;这样内边距padding>总宽width。
一个元素的内边距却大于这个元素的总宽,显然这是个悖论。
所以说作为内边距的padding是一定要加在宽度之上的。

情况二

使用不同的DOCTYPE 声明造成width的含义有所不同。

一般使用:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

用这句声明后,所有PADDING在不同浏览器上面占用宽度

============ 欢迎各位老板打赏~ ===========

本文版权归Bruce's Blog所有,转载引用请完整注明以下信息:
本文作者:Bruce
本文地址:CSS里padding和width的问题 | Bruce's Blog

发表评论

留言无头像?