我有3列延伸到相同的高度。现在唯一的问题是,如果我只有2列,它们会扩展它们的宽度并占据主容器的100%。所以基本上我需要它们具有相同的宽度,而不是它的1,2或3列。 有关如何实现这一点的任何想法? 非常感谢!
.content > img {
vertical-align:top;
}
#wrapper {
height: 100%;
width: 100%;
margin: 20px auto;
display:table;
overflow: hidden;
border-spacing: 30px;
}
#wrapper > .col {
display: table-cell;
width: 30.3%;
margin: 0 15px 3px;
background-color: #fff;
text-align: center;
position: relative;
height: 100%;
padding-bottom: 2px;
border:1px solid #000;
}
#wrapper > .col > .content {
padding:0 0 35px;
height:100%;
}
.content {
margin-bottom:30px;
position: relative;
}
.content > p {
vertical-align:top;
}
.content h3 {
font-size:1.375rem;
font-weight:400;
text-align:center;
margin-bottom: 20px;
padding: 25px 27px 0;
}
.content p {
text-align:left;
padding: 0 27px 30px;
}
.button.moreinfo {
margin-top: 5px;
margin-bottom: 0;
padding-top: 0.5rem;
padding-right: 0.3rem;
padding-bottom: 0.5rem;
padding-left: 0.3rem;
background-color: #2a2a2a;
font-size: 0.9rem;
color: #f39c12;
font-weight: 400 !important;
}
div.btn-align-bottom {
position:absolute;
bottom:50px;
left:0;
right:0;
}
.info-box {
margin-bottom:0;
margin-top: 15px;
}
.info-box img {
max-width: 100%;
max-height: 100%;
vertical-align: middle;
}
.info-box-inner {
background: #FFF;
padding:25px 27px 35px;
display:inline-block;
overflow:hidden;
float:none;
min-height:270px;
text-align:center;
-moz-box-shadow: 0px 1px 2px rgba(48, 48, 48, 0.3);
-webkit-box-shadow: 0px 1px 2px rgba(48, 48, 48, 0.3);
box-shadow: 0px 1px 2px rgba(48, 48, 48, 0.3);
z-index:1;
}
.info-box-inner p {
text-align:left;
}
.info-box-inner h3 {
font-size:1.375rem;
font-weight:400;
text-align:center;
}
答案 0 :(得分:1)
好的,最后here is my working jsFiddle demo。有关结果,请参阅http://jsfiddle.net/rfjg4/10/show/。
我将类col2
添加到第二个包装器和CSS:
.wrapper.col2:after {
content: "";
display: table-cell;
width: 30.3%;
margin: 0 15px 3px;
background-color: #fff;
text-align: center;
height: 100%;
padding-bottom: 2px;
}
使用上面的代码,将具有空内容的新单元格添加到<div class="wrapper col2">
标记。
或者,您可以使用CSS 3选择器来避免col2
:
wrapper:first-child:nth-last-child(3) ~ div::after {
content: "";
display: table-cell;
width: 30.3%;
margin: 0 15px 3px;
background-color: #fff;
text-align: center;
height: 100%;
padding-bottom: 2px;
}
有关示例,请参阅this jsFiddle或http://jsfiddle.net/rfjg4/11/show/。 (有关选择器的说明,请参阅此Stackoverflow问题Can CSS detect the number of children an element has?。)
一些注意事项:
id="wrapper"
使用了两次<div>
。您必须将id
更改为class
(并更新您的CSS)</div>
额外(在其他行中)。这些标签在jsFiddle中标记为红色。position:relative;
(我在示例中删除了它)。