CSS 两列 100% 宽度和相同的高度(正方形)
CSS two columns 100% width with same height (a square)
您好,我正在尝试创建一个带有两列方形元素的 gridview(相同宽度相同高度,高度取决于屏幕宽度)。这是一个工作示例,但两列不覆盖所有宽度.知道怎么做吗?
.container{
display: inline-block;
width: 100%;
background-color: #0ff;
}
box {
background:pink;
margin:2px;
float:left;
width:40vw;
height: 40vw;
}
<div class="container">
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
</div>
您 box
的 CSS 已根据您的要求更改
.container{
display: inline-block;
width: 100%;
background-color: #0ff;
}
box {
background:pink;
margin:1px;
float:left;
height: 40vw;
width: calc(50% - 2px);
}
<div class="container">
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
</div>
注意 :这里你使用 float : left
所以右边 space 比左边大 space。
当您使用 width: 40vw;
时,它们占 window 宽度的 40%,即每行 80%,因此预计会留下另外 20% 的空白。
你需要的是使用一个 width: 50%;
来制作 2 个盒子将填满 100%,但是 因为它们也有一个 margin: 2px
,所以你可能需要从 50% 中减去 4px(margin-left
减去 2px,margin-right
减去 2px)。所以这应该是 width: calc(50% - 4px);
并且除了在高度上使用视点单位 vw
之外,我建议你可以使用 padding-bottom: calc(50% - 4px);
这将使盒子的高度与其宽度相同:
box {
background:pink;
margin:2px;
float:left;
width: calc(50% - 4px);
padding-bottom: calc(50% - 4px)
}
工作 JsFiddle:https://jsfiddle.net/v8bdmLse/
您可以在“%”中定义宽度
.container{
display: inline-block;
width: 100%;
background-color: #0ff;
}
box {
background:pink;
margin:1%;
float:left;
width:48%;
height: 40vw;
}
<div class="container">
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
</div>
您好,我正在尝试创建一个带有两列方形元素的 gridview(相同宽度相同高度,高度取决于屏幕宽度)。这是一个工作示例,但两列不覆盖所有宽度.知道怎么做吗?
.container{
display: inline-block;
width: 100%;
background-color: #0ff;
}
box {
background:pink;
margin:2px;
float:left;
width:40vw;
height: 40vw;
}
<div class="container">
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
</div>
您 box
的 CSS 已根据您的要求更改
.container{
display: inline-block;
width: 100%;
background-color: #0ff;
}
box {
background:pink;
margin:1px;
float:left;
height: 40vw;
width: calc(50% - 2px);
}
<div class="container">
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
</div>
注意 :这里你使用 float : left
所以右边 space 比左边大 space。
当您使用 width: 40vw;
时,它们占 window 宽度的 40%,即每行 80%,因此预计会留下另外 20% 的空白。
你需要的是使用一个 width: 50%;
来制作 2 个盒子将填满 100%,但是 因为它们也有一个 margin: 2px
,所以你可能需要从 50% 中减去 4px(margin-left
减去 2px,margin-right
减去 2px)。所以这应该是 width: calc(50% - 4px);
并且除了在高度上使用视点单位 vw
之外,我建议你可以使用 padding-bottom: calc(50% - 4px);
这将使盒子的高度与其宽度相同:
box {
background:pink;
margin:2px;
float:left;
width: calc(50% - 4px);
padding-bottom: calc(50% - 4px)
}
工作 JsFiddle:https://jsfiddle.net/v8bdmLse/
您可以在“%”中定义宽度
.container{
display: inline-block;
width: 100%;
background-color: #0ff;
}
box {
background:pink;
margin:1%;
float:left;
width:48%;
height: 40vw;
}
<div class="container">
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
<box></box>
</div>