html - CSS 最后类型选择器

标签 html css

我最近一直在回顾网页设计并通过它学习新的东西。我现在正在使用 last-of-type 选择器,我正在尝试为导航栏这样做,但它似乎没有按照我想要的方式工作。

HTML:

<nav class="main-nav">
    <div class="inset-inner">
        <ul>
            <li><a href="">Home</a></li>
            <li><a href="">Contact</a></li>
            <li><a href="">About Us</a></li>
        </ul>
    </div>
</nav>

现在,我想为此选择 list of type,所以这是我的 CSS:

.main-nav ul li:last-of-type {
    color: green;
}

为此,我确实为 a 元素设置了颜色,因此我尝试添加 !important,但它根本没有帮助。让它工作的唯一方法是我这样做:

HTML:

<nav class="main-nav">
    <div class="inset-inner">
        <ul>
            <!--<li><a href="">Home</a></li>
            <li><a href="">Contact</a></li>
            <li><a href="">About Us</a></li>-->
            <li><a href="">Home</a>
                <a href="">Contact</a>
                <a href="">About Us</a>
            </li>
        </ul>
    </div>
</nav>

CSS:

/*
.main-nav ul li:last-of-type {
    color: green !important;
}
*/

.main-nav ul li a:last-of-type {
    color: green;
}

现在,当每个 a 元素都有一个 li 元素时,我该如何解决这个问题,到底是什么原因造成的?

最佳答案

使用 last-of-type<li> 上, 然后添加 a最后:

.main-nav ul li:last-of-type a{
    color: green;
}

jsFiddle example

关于html - CSS 最后类型选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24431779/

相关文章:

html - CSS : border-radius and color not respected within table

javascript - 如何改变 <div> 中元素的顺序?

javascript - 如何在 Javascript 中显示警报

css - 有没有办法将 FontAwesome 图标渲染为背景?

html - 如何使用内部绝对div的所有宽度

css - 为什么我的 Bootstrap 4 cols flex-grow 没有对齐?

jquery - 通过自动页面滚动,单击时将 div 浮出窗口顶部

jquery - 用于调整 div 的 css 属性的条件 JQuery 语句

html - 为按钮的旋转添加延迟

javascript - 位置 :fixed and responsive/adaptive Layout 的问题