JQM和CSS覆盖

时间:2016-09-15 12:28:47

标签: html css jquery-mobile

我正在使用nav元素来创建菜单。我也在使用JQM格式化listview。 JQM的CSS会覆盖导航样式,我根本无法理解为什么。

这是我的nav元素,包含链接元素:

<nav>
    <ul>
        <li><a href="new.html">New</a></li>
        <li><a href="update.html">Update</a></li>
    </ul>
</nav>

这是nav元素中链接元素的CSS:

nav > ul > li > a {
    color: #aaa;
    background-color:#333;
    display: block;
    line-height: 2em;
    padding: 0.5em 0.5em;
    text-decoration: none;
}

颜色属性被JQM样式表覆盖(变成蓝色)。具体的覆盖设置已被确定为:

.ui-page-theme-a a:visited,html .ui-bar-a a:visited,html .ui-body-a a:visited,html body .ui-group-theme-a a:访问过{     颜色:#38c; }

我不明白为什么它被覆盖了? JQM样式有一些特定的类,我没有在我的nav元素中指定,所以为什么我会丢失颜色设置?为什么JQM样式应用于我的非分类链接/导航?

注意:谈到这些事情我是完全的菜鸟,所以请原谅我的无知

1 个答案:

答案 0 :(得分:0)

JQM样式可能是由它的脚本添加的。一旦启动元素,它就会获得分配给它的类。

它被推翻的原因是因为选择器更具体。如果您想了解更多有关特异性的信息,请按照this link

如果你想要否决JQM风格,你有几个选择

又快又脏

使用a='ac'; b='bc_gh_ac'; strfind(b,a) 规则,它会取代所有其他样式

if ~isempty(strfind(b,a))
    disp('String is present');
end

后期规则

使用相同的选择器,但请确保在 JQM样式表

之后加载您的样式表
!important