使用浮动

时间:2015-07-15 05:01:26

标签: jquery html css

我正在尝试创建一行高度相等的子元素。但是,children元素包含可变高度的图像,因此高度应该是最高元素的高度。想象一下:

<div class="parent">
    <div class="child"><img /></div>
    <div class="child"><img /></div>
    <div class="child"><img /></div>
    <div class="child"><img /></div>
</div>

这是CSS:

.child {float:left;width:25%}

Visual description

我知道这可以用javascript完成。然而,这对我来说是不可能的(至少我是这么认为的),因为这是整体响应式设计的一部分,因此儿童的宽度设置为25%,将随着屏幕尺寸的不同而变化,例如50%

先谢谢!

3 个答案:

答案 0 :(得分:1)

在传统的文档流程中,父母要么根据孩子的大小,要么根据他们的大小确定,他们通常不能同时做这两件事。

没有flexbox。如果您处理现代浏览器要求,它就是您需要的解决方案。 http://osvaldas.info/flexbox-based-responsive-equal-height-blocks-with-javascript-fallback是如何进行这些类型分析的一个很好的例子。

答案 1 :(得分:0)

如果您希望这些子元素具有相同的高度

,请设置子高度
.child {float:left;width:25%; height: 100px; display: block;}

在.child

中设置img的max-height
.child img {max-height: 100px;}

答案 2 :(得分:0)

嘿,现在尝试这个

 *{box-sizing:border-box;}    
.parent{
display:table;
  width:100%;
  background:red;
 padding:5px;
}
.child{
display:table-cell;
  background:blue;
  width:25%;
}
   .child + .child{border-left: 5px solid red;}
<div class="parent">
    <div class="child">demo </div>
    <div class="child">text <br/>demo text</div>
    <div class="child"></div>
    <div class="child">hello <br/>hello<br/></div>
</div>