javascript - 如果显示元素,则添加 css 属性

标签 javascript jquery css wordpress menu

我有一个显示在某些页面上的菜单(此处使用 wordpress)。为确保此菜单不与内容重叠,我在内容换行中添加了填充。我现在需要的是此填充仅对显示菜单元素 (#toc_container) 的页面有效。

这可以使用 css 或使用其他技巧吗?

最佳答案

快速 JS 解决方案:

Vanilla

var menu = document.getElementById("toc_container");
var body = document.body;
if (menu !== null) {
    body.style.paddingTop = menu.clientHeight + "px";
}

jQuery

var $menu = $("#toc_container");
var $body = $("body");
if ($menu.length > 0) {
    $body.css('padding-top', $menu.outerHeight(true));
}

这将检查菜单是否存在,如果存在则添加等于菜单高度的填充。

关于javascript - 如果显示元素,则添加 css 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38213372/

相关文章:

javascript - 使用命名空间调用jquery

javascript - 抽象 AJAX 调用,以便我可以使我的代码更加动态

html - 文本下划线是属性吗?

javascript - 使用 Emotion.sh 从样式组件传递 Prop

javascript - Owl-Carousel 过渡回退

jquery 属性选择器变量包含引号?

javascript - 使用 jQuery 合并相等的表格单元格

html - 如何安装适用于 Windows 的 WebKit(谷歌浏览器)?

css - 实现嵌套列布局

javascript - 生成一些 Promise 而不响应所有 Promise?