Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CSS-100%px修复了我的问题?_Css - Fatal编程技术网

CSS-100%px修复了我的问题?

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

我有一个关于在最新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-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是块,它们占据了所有的宽度。你可能在想斯潘,谢谢。那页有一些我完全不知道的好信息。