【发布时间】:2015-08-24 20:34:00
【问题描述】:
我正在尝试获取 div 中每个 h2 的高度,然后如果该高度高于 21px,则对该 h2 应用一个类或更改他的 css。
原因是当我的项目标题超过单行时,我的项目标题与标签重叠:
到目前为止,我已经尝试过了:
$('.post-details h2').each(function(){
if($(this).height() > 21)
{
$(this).css({"margin-top": "315px", "line-height": "28px"});
}
});
还有这个:
$('.post-details h2').each(function(){
if($(this).height() > 21)
{
$(this).addClass('margintop');
}
});
它们都不起作用。 我也试过不使用每个,但没有用,因为它会选择我所有的 h2 并将 css/class 应用于所有这些。 - 如果您有比我正在考虑的解决方案更好的解决方案,也欢迎他们。
非常感谢您的帮助!
【问题讨论】:
-
您是否检查了 HTML 或添加了 console.log 以验证
each()是否正在运行? -
你具体查询什么高度?除非您为
h2元素设置了样式,否则它们都应该具有相同的高度。 -
@Aweary :他们没有,因为 2 行 titlew 有更高的高度。当您将窗口大小调整为较小尺寸时,我遇到了问题。长标题变成 2 行标题。这是正常的,它们的扩展宽度较小。例如,平板电脑会看到 2 行标题与标签重叠,这是我不想要的。因此,我正在尝试为该问题找到解决方案。我说清楚了吗?
-
@jwatts1980 :我在控制台中没有任何错误。我应该寻找特定的东西吗?
-
“调整大小”评论是关键.. 正在研究解决方案。
标签: javascript jquery html css height