CSS-100%px修复了我的问题?
我有一个关于在最新IE和Chrome浏览器上呈现的一些奇怪的东西的问题。我有一个div,应该覆盖100%的家长。如此笨拙,我给它-宽度:100%px;作为CSS属性。这是我的全部项目:CSS-100%px修复了我的问题?,css,Css,我有一个关于在最新IE和Chrome浏览器上呈现的一些奇怪的东西的问题。我有一个div,应该覆盖100%的家长。如此笨拙,我给它-宽度:100%px;作为CSS属性。这是我的全部项目: .loc_vendiv{ position: relative; margin-top: 5px; left: 0px; width: 100%px; height: 120px; border: 1px solid #333; background-col
.loc_vendiv{
position: relative;
margin-top: 5px;
left: 0px;
width: 100%px;
height: 120px;
border: 1px solid #333;
background-color: #fff;
}
奇怪的是,它工作得很好。如此之多,以至于我今天才注意到这是错误的。我不想要一个难看的样式表,所以从末尾删除了px。而且。。。div太宽了两个像素。有没有解释为什么会发生这种情况?以下是父分区:
#loc_catlist{
position: absolute;
width: 612px;
height: 720px;
top: 50px;
left: 0px;
background-color: #eee;
overflow-y: auto;
overflow-x: hidden;
}
我有点恼火,因为糟糕的代码可以工作,但正确的代码却不能满足我的要求。不过,我想我不能离开它。我不喜欢这样的小打嗝…2px太宽很可能是因为除了1px的边框外,还有100%的宽度(四周加起来就是2px宽度) 可以从“Paul Irish”中找到关于
这是因为你的边界。 尝试添加:
box-sizing: border-box;
对于你的
.loc\u vendiv
类,它将考虑边界。浏览器通常忽略无效的css规则,如宽度:100%px代码>这意味着要获得错误的样式。您只需删除宽度规则。当宽度值错误(100%px;)时,浏览器将忽略CSS的这一部分。如果css的这一部分被删除,结果将是相同的
对于额外的2个像素,这是因为边框设置为div.loc_vendiv
div.loc_vendiv的宽度等于div#loc_catlist的宽度,并向其添加边框值(左边框1px,右边框1px=2px)
请记住,当填充创建内部空间时,边框宽度会添加到对象的大小。浏览器通常会忽略无效的css规则。尝试完全删除width
规则您无法设置width:100%px
,请选择px
或%
@AleshaOleg在问题中说过。他已经知道了。@litelite-是的。我能够完全删除宽度,但根据我的经验,div通常不会拉伸到100%宽度,而不满足于推动它们。这个div到底是怎么决定加宽的呢?div是块,它们占据了所有的宽度。你可能在想斯潘,谢谢。那页有一些我完全不知道的好信息。