【分享】div > li > a{}和div li a{}的区别
初学者,今天第一次看到css文件中这样的写法:nav .primary_nav > li > a{font-size:16px;}很奇怪li和a前边的“>”尖括号是什么意思,经过尝试总结如下<div class="navigation_container"> <!--Navigation Starts--><nav>
<ul class="primary_nav">
<li><a href="leisure_listing.html">Women</a>
<!--SUbmenu Starts-->
<ul class="sub_menu">
<li> <a href="#">Dresses</a>
<ul>
<li><a href="#">Skirts</a></li>
<li><a href="#">Shorts</a></li>
</ul>
</li>
<li> <a href="#">Accessories</a>
<ul>
<li><a href="#">Sunglasses</a></li>
<li><a href="#">Scarves</a></li>
</ul>
</li>
</ul>
<!--SUbmenu Ends-->
</li>
<li><a href="leisure_listing.html">Men</a>
<!--SUbmenu Starts-->
<ul class="sub_menu">
<li> <a href="#">Men Summer Collection</a>
<ul>
<li><a href="#">Premium Pants</a></li>
<li><a href="#">Khakis</a></li>
</ul>
</li>
<li> <a href="#">Accessories</a>
<ul>
<li><a href="#">Sunglasses</a></li>
<li><a href="#">Scarves</a></li>
</ul>
</li>
</ul>
<!--SUbmenu Ends-->
</li>
</ul>
</nav>
css代码如下:
nav .primary_nav > li > a{font-size:16px;}
那么:
nav .primary_nav > li > a{font-size:16px;} 和 nav .primary_nav li a{font-size:16px;}的写法有什么区别呢?
1. nav .primary_nav li a{font-size:16px;}的写法是:将.primary_nav 下边的所有li下的所有a获取到,并改变字体大小为16px;
那么,根据上边的html代码,这里边所有的字都变成16px的了。
2.nav .primary_nav > li > a{font-size:16px;}的写法是:将.primary_nav 下边的子级目录下的a链接字体改成16px;
那么,效果是,“Women”和“Men”的字体变成了16px,其它字体没有变;
本帖最后由 羊毛丶 于 2019-4-11 22:06 编辑
选择器选择器
例子例子例子描述例子描述例子描述
CSS
.class
.intro
选择 class="intro" 的所有元素。
1
#id
#firstname
选择 id="firstname" 的所有元素。
1
*
*
选择所有元素。
2
element
p
标签选择器,选择所有 <p> 元素。
1
element,element
M,N
选择所有 M 元素和所有 N 元素。
1
element element
M N
选择 M 元素内部的所有 M 元素。
1
element>element
M>N
选择父元素为 M 元素的所有 N 元素。
2
element+element
M+N
选择紧接在 M 元素之后的所有 N 元素。
2
选择带有 target 属性所有元素。
2
选择 target="_blank" 的所有元素。
2
选择 title 属性包含单词 "flower" 的所有元素。
2
选择 lang 属性值以 "en" 开头的所有元素。
2
:link
a:link
选择所有未被访问的链接。
1
:visited
a:visited
选择所有已被访问的链接。
1
:active
a:active
选择活动链接。
1
:hover
a:hover
选择鼠标指针位于其上的链接。
1
:focus
input:focus
选择获得焦点的 input 元素。
2
:first-letter
p:first-letter
选择每个 <p> 元素的首字母。
1
:first-line
p:first-line
选择每个 <p> 元素的首行。
1
:first-child
p:first-child
选择属于父元素的第一个子元素的每个 <p> 元素。
2
:before
p:before
在每个 <p> 元素的内容之前插入内容。
2
:after
p:after
在每个 <p> 元素的内容之后插入内容。
2
:lang(language)
p:lang(it)
选择带有以 "it" 开头的 lang 属性值的每个 <p> 元素。
2
element1~element2
p~ul
兄弟选择器,选择前面有 <p> 元素的每个 <ul> 元素。
3
a
选择其 src 属性值以 "https" 开头的每个 <a> 元素。
3
a
选择其 src 属性以 ".pdf" 结尾的所有 <a> 元素。
3
a
选择其 src 属性中包含 "abc" 子串的每个 <a> 元素。
3
:first-of-type
p:first-of-type
选择属于其父元素的首个 <p> 元素的每个 <p> 元素。
3
:last-of-type
p:last-of-type
选择属于其父元素的最后 <p> 元素的每个 <p> 元素。
3
:only-of-type
p:only-of-type
选择属于其父元素唯一的 <p> 元素的每个 <p> 元素。
3
:only-child
p:only-child
选择属于其父元素的唯一子元素的每个 <p> 元素。
3
:nth-child(n)
p:nth-child(2)
选择属于其父元素的第二个子元素的每个 <p> 元素。
3
:nth-last-child(n)
p:nth-last-child(2)
同上,从最后一个子元素开始计数。
3
:nth-of-type(n)
p:nth-of-type(2)
选择属于其父元素第二个 <p> 元素的每个 <p> 元素。
3
:nth-last-of-type(n)
p:nth-last-of-type(2)
同上,但是从最后一个子元素开始计数。
3
:last-child
p:last-child
选择属于其父元素最后一个子元素每个 <p> 元素。
3
:root
:root
选择文档的根元素。
3
:empty
p:empty
选择没有子元素的每个 <p> 元素(包括文本节点)。
3
:target
#news:target
选择当前活动的 #news 元素。
3
:enabled
input:enabled
选择每个启用的 <input> 元素。
3
:disabled
input:disabled
选择每个禁用的 <input> 元素
3
:checked
input:checked
选择每个被选中的 <input> 元素。
3
:not(selector)
:not(p)
选择非 <p> 元素的每个元素。
3
::selection
::selection
选择被用户选取的元素部分。
3
> 代表必须是子类空格是后代 很好,学习了{:301_1001:} 一个是子类就是直接后面跟的;一个是后代 就是后面所有的里面的任何都可以 好的很啊 沐雨红尘 发表于 2019-4-14 10:26
继续努力,前端的东西有多又烦,加油!
确实,看似简单但是用的东西有点多,头疼! .box>li{color:red;}------(大于号会选择到box下的直接子级li) .box li{color:red;}-------(而空格会选择到box下的所有li)
<div class="box">
<li>大于号时字体会变红后,空格也会</li>
<li>大于号时字体会变红后,空格也会</li>
<div><li>而这个li大于号时字体不会变红,因为大于号选择的是直接的子级,这个不是直接的子级,而空格会让它变红(空格选择所有li)</li></div>
</div>
回复板手敲{:1_918:},应该可以理解了,前几天我也有这种困惑那,我刚明了
页:
[1]