jquery - 两个屏幕分辨率的重要属性

标签 jquery html css

假设我有以下代码:

    <ul>
        <li>Menu1
            <ul class="submenu">
                <li class="firstmenu">submenu-1</li>
                <li>submenu-2</li>
                <li>submenu-3</li>
            </ul>
        </li>
        <li>Menu2
            <ul class="submenu">
                <li class="firstmenu" id="first">submenu-1</li>
                <li>submenu-2</li>
                <li>submenu-3</li>
            </ul>
        </li>
    </ul>

在这里,我使用以下代码为子菜单的 li 第一项提供 padding-left:

   .submenu li:first-child{padding-left: 173px;}

但对于 Menu2 的第一个 li,我想要不同的填充。因此,我使用了它的 ID:

#first{padding-left:500px !important;} 

所以基本上,我已经用 !important 覆盖了之前的左边。

现在我想让它响应,所以我正在使用:

    @media only screen
    and (min-width : 768px)
    and (max-width : 894px) {
        #first{padding-left:150px !important;}
    }

但是由于我已经将 !important 给了 @media all,它不考虑 @media only screen 和(最小宽度:768px) 和(最大宽度:894 像素)

所以基本上我想为屏幕分辨率 768 到 894 使用不同的填充

有什么办法吗?

最佳答案

总结

!important 注释在 CSS priority scheme 上具有最高优先级.这个案例是why is the use of !important discouraged的一个很好的例子.

解决方案是删除 !important 的需要。它可以通过多种方式实现,如下所示:

.submenu li.firstmenu{
    padding-left: 173px;
}

.submenu li.firstmenu#first{
    padding-left:500px
}

@media only screen
and (min-width : 768px)
and (max-width : 894px) {
    .submenu li.firstmenu#first{
       padding-left:150px;
    }
}

注意事项

上面的选择器与您的基本相同,但使用 firstmenu 类,因为它在您的 HTML 布局中看到,而不是伪选择器 :first-child.submenu li.firstmenu states 选择一个 li 元素,其类为“firstmenu”并且是任何类为“的元素的后代” submenu",而 .submenu li:first-child states 选择一个 li 元素,它的父元素的第一个子元素以及类为“submenu”的任何元素的后代

要根据要求细化填充,使用目标元素的 idsubmenu li.firstmenu#first states 选择一个 li 元素,其 ID 等于“myid”,其类为“firstmenu”,并且是任何元素的后代类是“子菜单”。对于此 HTML 布局,仅使用 id 选择器 (#firstmenu) 即可获得相同的结果,如其他答案所示。

关于jquery - 两个屏幕分辨率的重要属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27437130/

相关文章:

javascript - 在更改时删除对选择元素的关注,如果没有使用 jquery 更改

javascript - 单击时动态更改列大小

javascript - 带有导航和中央突出显示缩略图的 jQuery 轮播

css - 获取静态 Web 上下文资源以在可添加书签和不可添加书签的 Wicket 页面上工作

php - 通过使用 MySQL 和 PHP 从下拉列表中选择特定选项来过滤记录

javascript - 如何使用类隐藏元素;而不是在 JQuery 中使用 css 函数?

跨浏览器实例/页面刷新对本地文件的 Javascript 持久访问

html - Bootstrap 折叠面板在展开时变得太大

javascript - 谷歌标记的网站中的恶意软件

html - 在您的机器上安装 Google 字体后如何使用它