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