我想让我的内部div 100%宽度的身体,而不是父div的100%。这可能吗?
布局如下:
<body>
<div> /** Width:900px; **/
<div> /** This I want 100% of BODY, not of parent div **/
</div>
</div>
</body>
答案 0 :(得分:11)
我希望你看起来像这样...........见DEMO
UPDATED DEMO 2 AS PER YOUR CURRENT REQUIREMENTS
<强> CSS 强>
.parent {
background:red;
width:900px;
margin:0 auto;
padding:10px;
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box;
box-sizing:border-box;
}
.inner {
background:green;
height:100px;
position:absolute;
left:0;
right:0;
}
.child {
height:100px;
background:black;
margin:10px 0;
}
的 强> -------------的 * * 强>
第二次回答没有定位,但有一些技巧我在这里使用所以请检查代码&amp;下面提到的演示: -
<强> HTML 强>
<body>
<div class="parent"> /** Width:900px; **/
<div class="child"></div>
</div>
<div class="inner"> /** This I want 100% of BODY, not of parent div **/</div>
<div class="parent">
<div class="child"></div>
<div class="child"></div>
</div>
</body>
<强> CSS 强>
.parent {
background:red;
width:900px;
margin:0 auto;
padding:10px;
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box;
box-sizing:border-box;
}
.inner {
background:green;
height:100px;
}
.child {
height:100px;
background:black;
margin:10px 0;
}
答案 1 :(得分:4)
你可以使用vh和vw单位
.parent {
width: 900px;
height: 400px;
background-color: red;
}
.child {
width: 100vw;
height: 200px;
background-color: blue;
}
<html>
<body>
<div class="parent">
<div class="child">
</div>
</div>
</body>
</html>
答案 2 :(得分:1)
尝试一下:
.inner {
margin-left: -50vw;
left: 50%;
position: fixed;
height: 100vw;
width: 100vw;
top: 0;
}
.outer {
width: 900px;
/* your outer div style*/
}
<body>
<div class="outer"> /** Width:900px; **/
<div class="inner"> /** This 100% of BODY, not of parent div **/
</div>
</div>
</body>
答案 3 :(得分:0)
我认为你所要求的是不可能的。相反,你应该考虑重新思考你的布局。我经常发现自己在做这样的事情:
HTML:
<div id="top">
<div class="wrapper"></div>
</div>
<div id="content">
<div class="wrapper"></div>
</div>
<div id="footer">
<div class="wrapper"></div>
</div>
的CSS:
#top {
background: red;
}
#content {
background: orange;
}
#footer {
background: yellow;
}
.wrapper {
width: 860px;
margin: 0 auto;
padding: 20px;
background: rgba(255, 255, 255, 0.2);
}
答案 4 :(得分:0)
考虑将您的布局更改为以下内容:
然后,您只需将ID标签应用于要应用特定规则的DIV即可。
<div class="outer">
<div class="inner">HEADER</div>
</div>
<div class="outer">
<div class="inner">CONTENT</div>
</div>
<div class="outer">
<div class="inner">FOOTER</div>
</div>
.outer {
width:100%;
background:#ccc;
}
.inner {
width:920px;
background:#999;
margin:0 auto 20px;
padding:20px;
}
答案 5 :(得分:0)
这就成了伎俩。一个jQuery脚本:
$(document).ready(function () {
var width = $(window).width();
$('.pane-block-8').attr('style', 'width:' + width + 'px; left:-26.5% !important;');
});
$(window).resize(function () {
var width = $(window).width();
$('.pane-block-8').attr('style', 'width:' + width + 'px; left:-26.5% !important;');
});
答案 6 :(得分:0)
覆盖 min-width ( min-width:100%)会阻止容器增长到内容的大小。
<强>详细信息:强> https://developer.mozilla.org/en-US/docs/Web/HTML/Element/fieldset通知: “与几乎任何其他元素不同,WHATWG HTML渲染规范表明 min-width:min-content 作为默认样式的一部分,许多浏览器实现这样的样式(或近似它的东西)。“