我在网站的一部分中具有以下div结构。有两个div,一个下面另一个。第一个div分为两个元素。一格( 63%)和一个按钮。
在此之下,还有另一个div,其div的宽度和位置与绝对值相同 63%。
将位置设为绝对值不会导致两个div具有相同的宽度和相同的大小。
一部分CSS代码
#two{
border: 1px solid;
width: 63%;
position: absolute; //Enabling this resulting in varying size even width is same
}
这是我的密码笔链接https://codepen.io/JGSpark/pen/bZyvEV?editors=1100
我希望有两个与绝对位置相同大小的div。有什么可以在这里尝试的吗?
答案 0 :(得分:3)
添加position: absolute
相对于任何元素时,其位置都相对于根元素。
63%的textValue
是#one
元素的63%,而#two
的63%是文档的63%,其中包括默认的body
边距< / em>。因此,将其重置为零:
body {
margin: 0; /* added */
}
#template {
width: 30%;
}
#textValue {
border: 1px solid red;
width: 63%;
float: left;
}
#icon {
width: 5%;
}
#text {
width: 95%;
float: left;
}
#one {
width: 100%;
}
#two {
border: 1px solid;
width: 63%;
position: absolute;
}
<div id="one" class="row">
<div id="textValue"><span id="text">ONE Inner text</span><span id="icon"><i class="fa fa-angle-up"></i></span></div>
<button id="template" class="btn primary">Template</button>
</div>
<div id="two">TWO</div>
或者您可以为具有position: relative
的元素添加包装器-参见下面的演示
.wrapper {
position: relative; /* added */
}
#template {
width: 30%;
}
#textValue {
border: 1px solid red;
width: 63%;
float: left;
}
#icon {
width: 5%;
}
#text {
width: 95%;
float: left;
}
#one {
width: 100%;
}
#two {
border: 1px solid;
width: 63%;
position: absolute;
}
<div class="wrapper">
<div id="one" class="row">
<div id="textValue"><span id="text">ONE Inner text</span><span id="icon "><i class="fa fa-angle-up "></i></span></div>
<button id="template" class="btn primary ">Template</button>
</div>
<div id="two">TWO</div>
</div>
答案 1 :(得分:2)
我们能够添加带有position:relative的父div。或只添加position:相对于body标签。
<div style="position: relative;">
<div id="one" class="row">
<div id="textValue"><span id="text">ONE Inner text</span><span id="icon"><i class="fa fa-angle-up"></i></span></div>
<button id="template" class="btn primary">Template</button>
</div>
<div id="two">TWO</div>
</div>
答案 2 :(得分:1)
绝对位置必须相对于某物,在这种情况下,它相对于具有默认边距和填充的文档。试试这个:
<div class="wrapper">
<div id="one" class="row">
<div id="textValue"><span id="text">ONE Inner text</span><span id="icon"><i
class="fa fa-angle-up"></i></span></div>
<button id="template" class="btn primary">Template</button>
</div>
<div id="two">TWO</div>
</div>
在CSS中添加:
.wrapper {
position:relative;
}
答案 3 :(得分:0)