我试图防止我拥有的两个并排 div 在响应式布局中重叠。
这是我的 html:
<div class="image"><img src="images/misc/libertyXSmall.jpg"/></div>
<div class="storyWrapper">
<div class="headline">THIS IS A TEST HEADLINE TO SEE HOW EVERYTHING
WORKS ON THIS NEWS LIST PAGE!</div>
</div>
这是 CSS:
body{margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px;}
.mainContainer{float:left; height:auto; width:100%; max-width:800px; }
.image{float:left; margin-top:0px; width:14.25%; height:auto;}
.storyWrapper{float:left; width:85.75%; height:auto; min-height:64px; background-color:#f6f6f6; color:#000000;transition:0.2s; }
.storyWrapper:hover{background-color:#c0c0c0; color:#ffffff;}
.headline{text-align:left; padding:6px 6px 6px 6px; font-size:11pt; font-weight:bold; font-family:Arial; text-decoration:none;}
此页面的链接是:http://www.rebelplanetnews.com/newsMenu3.html
如您所见,我的问题是......右侧的文本 div 在页面调整大小(更小)时与左侧的图像 div 重叠。我需要阻止这种情况。
最佳答案
答案是不要在标题中使用百分比。最简单的解决方案是使用 calc
值,它可以在所有现代浏览器中使用。
以下将起作用:
div.storyWrapper {
width: calc(100% - 114px);
float: right;
}
在这里,我注意到图像的宽度是 114px,并将容器的宽度设置为 100% 减去它。
我也将容器向右浮动。
请注意 calc
有点挑剔。特别是,您需要在 -
运算符周围使用空格:calc(100%-114px)
将不起作用,至少在所有浏览器中都不会。
关于css - 防止 Div 在响应式布局中重叠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43567566/