Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/32.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
Html 当在固定宽度内时,使元素100%位于主体内-IE6错误_Html_Css_Internet Explorer 6 - Fatal编程技术网

Html 当在固定宽度内时,使元素100%位于主体内-IE6错误

Html 当在固定宽度内时,使元素100%位于主体内-IE6错误,html,css,internet-explorer-6,Html,Css,Internet Explorer 6,很确定这是一个IE6错误,因为它在所有其他浏览器中都能工作 : 蓝色 红色 因此,“红色”div应该是其容器(在本例中为主体)的100%宽度。在IE6中,它始终是600px。有没有一个不涉及忽略ie6的解决方案?(我希望我可以,相信我!)该元素相对于其第一个定位(非静态)的祖先元素进行定位。 绝对位置元素相对于第一个非静态位置的父元素定位。如果未找到此类元素,则包含的块为 因此,要使您的内部div相对于其父级被定位为“绝对”,您必须使其父级被定位为相对 蓝色 红色 对于您的其他情况(ie

很确定这是一个IE6错误,因为它在所有其他浏览器中都能工作

:


蓝色
红色

因此,“红色”div应该是其容器(在本例中为主体)的100%宽度。在IE6中,它始终是600px。有没有一个不涉及忽略ie6的解决方案?(我希望我可以,相信我!)

该元素相对于其第一个定位(非静态)的祖先元素进行定位。 绝对位置元素相对于第一个非静态位置的父元素定位。如果未找到此类元素,则包含的块为

因此,要使您的内部div相对于其父级被定位为“绝对”,您必须使其父级被定位为相对

蓝色
红色

对于您的其他情况(ie6 bug?),我需要更多的代码。

如果没有CSS和完整的HTML,我无法帮助您。你必须理解我的意思。你可以试着将
位置:相对身体设置为
。现在只有大约1%的访问者使用IE6浏览器。我不在乎它。它的容器是父div而不是body。我已经将“1%”注释标记为在这种情况下有用,这是我的想法。然而,由于复杂的原因,我需要对IE6做一些事情。其中一个恼人的情况是,我需要改变我的CSS和HTML结构来适应这个frickin浏览器无论如何谢谢你!谢谢你摆好小提琴下次我会这么做的。我了解相对职位的工作原理。在我的情况下,它会把它从身体上拿走。。。除IE6外,它对所有浏览器都适用。它好像总是从它的容器中获取宽度。有趣的是,您可以使用“left:0”将其定位到主体,但宽度始终在容器上。
        <div style="background:blue; width:600px; margin-left:auto; margin-right:auto;">
            BLUE
            <div style="background:red; position:absolute; width:100%; left:0;">
                red
            </div>
        </div>
<div style="background:blue; width:600px; margin-left:auto; margin-right:auto;position:relative">BLUE
    <div style="background:red; position:absolute; width:100%; left:0;">red</div>
</div>