我有几个连续的section元素,每个元素都包含一个标题标记。是否可以强制浏览器仅使用CSS渲染具有完全相同高度的标题标记(使浏览器使用最大的计算值而不实际指定精确值)。下面的代码片段应该可以让您更清楚地了解我所拥有的内容以及我希望浏览器使用最大的计算高度值进行渲染的部分。
<section>
<h2>Heading One</h2>
<img src = ''>
<p>Some Text</p>
</section>
<section>
<h2>Heading Two</h2>
<img src = ''>
<p>Some Text</p>
</section>
<section>
<h2>Heading Three</h2>
<img src = ''>
<p>Some Text</p>
</section>
由于此结构中的某些标题可以包含跨越几行的文本,导致标题的高度不同,我想知道使用CSS的解决方案,如果存在,可以强制浏览器使用所有三个标签的三个标题标签的最大高度值。
基于前面提到的,如果能够找到解决方案,那么我将非常感谢您的意见。
答案 0 :(得分:1)
我今天早上确实发了一篇关于此问题的帖子,请参阅:Set height of 3 elements, taking largest value, across multiple rows
如果不使用javascript / JQuery
,我认为不可能使用JQuery:
var $sections = $('section');
$sections.filter(':nth-child(3n-2)').each(function () {
var $this = $(this),
$els = $this.nextAll(':lt(2)').addBack();
var sectionheight = new Array();
$els.each(function () {
var value = $(this).height();
sectionheight.push(value);
});
var newsectionheight = Math.max.apply(Math, sectionheight);
$els.height(newsectionheight);
})
Arun P Johny的小提琴:http://jsfiddle.net/arunpjohny/6JqB2/