jQuery-使用等列脚本重新计算高度
我有一个上面列出的页面,它有一个手风琴盒,打开时可以打破布局。特别是最后一个。我使用以下脚本使列相等:jQuery-使用等列脚本重新计算高度,jquery,css,equal-heights,Jquery,Css,Equal Heights,我有一个上面列出的页面,它有一个手风琴盒,打开时可以打破布局。特别是最后一个。我使用以下脚本使列相等: $(window).load(function() { $(".equal_heights").equalHeights(); }); (function($) { $.fn.equalHeights = function(minHeight, maxHeight) { tallest = (minHeight) ? minHeight : 0;
$(window).load(function() {
$(".equal_heights").equalHeights();
});
(function($) {
$.fn.equalHeights = function(minHeight, maxHeight) {
tallest = (minHeight) ? minHeight : 0;
this.each(function() {
if($(this).height() > tallest) {
tallest = $(this).height();
}
});
if((maxHeight) && tallest > maxHeight) tallest = maxHeight;
return this.each(function() {
$(this).height(tallest).css("overflow","visible");
});
}
})(jQuery);
当框断开时,如何调整两列的大小。我在尝试innerheight,但那不起作用。有人有什么想法吗?只需使用CSS来获得等高的列,就可以省去很多麻烦。最简单的方法是将元素的显示属性更改为表格单元格:
.main{
显示:表格;/*可选*/
}
.main文章,.main旁白{
显示:表格单元格;
}
我爱你,我爱你。。。
我在旁边!
这适用于无限数量的“列”,只要它们是相邻的和表单元格。由于未使用浮动,因此无需清除它们。另一个优点是因为它是纯CSS,您可以通过媒体查询在狭窄的设备上隐藏您的2列布局。当有纯CSS选项可用时,您选择使用JavaScript创建等高列有什么特殊原因吗?据我所知,没有任何好的/真正的等高CSS选项可用…@cimmanon:因为在纯CSS中可能很痛苦。为什么现在每个人都如此害怕
表
?老实说,如果是我,我会用垂直对齐:top代码>从而保持与现有布局完全相同的布局,但由最高单元格内容定义的列高度相等。这比把你送进监狱要容易得多corner@SpYk3HH而这在多大程度上转化为移动设备?更不用说,出于可访问性的原因,以这种方式使用表是很糟糕的。
.main {
display: table; /* optional */
}
.main article, .main aside {
display: table-cell;
}
<div class="main">
<article>
Lorem ipsum dolor sit amet...
</article>
<aside>
I'm the aside!
</aside>
</div>