html5中的几种常见选择器

html5中的几种常见选择器,第1张

每天一更新,这些初级html知识你掌握了吗?

css选择器的优先级:作用的元素一样,样式一样,就会有优先级问题。

* 通配选择器 0

* 标签名选择器 1

* 类选择器 10

* id选择器 100

* 后代选择器 选择器1 选择器2 ...(会有相加的过程)

* 群组选择器 选择器1,选择器2,... (不会有相加的过程)

注意:

* 1.相同类型的选择器 样式冲突下 后覆盖前

* 2.不同类型的选择器 样式冲突下 优先级高覆盖优先级低

* 3.* <Tags <class <id <style <!important

* 4.!important慎用(非得用的时候,要加注释说明一下)

1.标记选择器主要应用在HTML页中的标记样式选择。如P选择器就用于声明网页中有P标记的文本内容,同理,H1选择器则可以标记页面中H1的样式。例如:H1 { font-size:14pxfont-weight:boldcolor:#ccc}以上代码表示在所有应用H1选择器的地方,将文字的大小设为14像素并加粗,同时将颜色设为灰色,如果要改变H1的颜色,只需将color属性更改就可以了,比如将color设为#e7eefe来与网页的其他地方协调。2.类别选择器这是一类最常用的选择器,用它来定义网页中需要特殊表现的样式,类别选择器的名称可以由作者自由定义,一般来讲类别选择器的命名最好有一定的意义,使CSS代码更易维护和阅读。例如定义导航就可以使用.daohang{}或者是.nav{},不要使用简略或者特殊的字符串,否则可能三天后当你再读你的CSS代码时,就连你自己都搞不清一个样式到底是做什么用的!类别选择器就是CSS类,在HTML表现为调用的class。例如:(1)style.css文件中定义.title { margin:10pxpadding:2px 5px}(2)HTML文件中<p class="title"></p>在上述定义中,p标签将引用CSS文件中的title样式应用到整个p覆盖的范围。p将显示为一个上下左右margin各为10px,上下padding为2px,左右padding为5px的矩形。请注意类别选择器CSS定义和标记选择器的区别:在CSS文件中,标记选择器前边没有"."号,下面我们还会讲到ID选择器,它的定义也不一样,每个ID选择器样式前有一个"#"号,以确定其为ID选择器,而在HTML中则用ID="style"引用。值得注意的是,一个标签可以同时应用多个class选择器,如<h3 class="style1 style2"></h3>,具体大家可以在下边思考并做下实验,笔者在这就不举例了。3.ID选择器(1)ID选择器用法和class基本没有区别,他们的不同之处就在于ID选择器只能在HTML页中使用一次,而class则可以任意多次调用,在CSS文件中,ID 选择器一般写成#idname { bgcolor:#339font-size:16px}如果一个ID应用于多个HTML标记,则有可能造成IE编译错误,并且由于ID选择器可以被JAVASCRIPT等调用,所以多个ID会导致JAVA编译错误并崩溃!(2)HTML的引用在HTML中引用ID选择器的代码如下所示:<div id="name"></div>并且ID选择器不能像类别选择器那样同时被一个标签调用。这也是完全错误的语法。 复合选择器就是基本选择器通过不同的链接方式构成的。复合选择器就是两个或多个基本选择器,通过不同方式链接而成的选择器。

CSS3 选择器大概有一下几个类型:

全局选择器    Universal Selector

类型选择器    Type Selector

属性选择器    Attribute Selectors

伪类    Pseudo-classes

伪元素    Pseudo-element

Class 选择器    Class Selectors

ID 选择器    ID Selectors

选择符    Combinator

下面是 W3C 官网上关于 Selector Level 3 的一个表格。我翻译了一下。

不同浏览器对 CSS 选择器有不同程度的支持,目前的浏览器(IE9前除外)已经支持了下面的绝大部分选择器。

*    任何元素

E    一个 E 类型的元素  

E[foo]    拥有“foo”属性的E 元素

E[foo="bar"]    拥有属性值等于“bar”的“foo”属性的 E 元素

E[foo~="bar"]    一个 E 元素,它的“foo”属性值是通过空格分开的一系列的值,其中有一个值等于“bar”

E[foo^="bar"]    一个 E 元素,它的“foo”属性的值是一个以“bar”开头的字符串

E[foo$="bar"]    一个 E 元素,它的“foo”属性的值是一个以“bar”结尾的字符串

E[foo*="bar"]    一个 E 元素,它的“foo”属性值包含字符串“bar”

E[foo|="en"]    一个 E 元素,它的“foo”属性的值是通过连字符(-)分割的一系列的值的字符串,其中有一个值是以“en”开头  

E:root    一个 E 元素,是文档的根元素

E:nth-child(n)    一个 E 元素,是它父元素的第 n 个子元素

E:nth-last-child(n)    一个 E 元素,是它父元素的倒数第 n 个子元素

E:nth-of-type(n)    一个 E 元素,在它同类型的兄弟元素中排在第 n 个

E:nth-last-of-type(n)    一个 E 元素,在它同类型的兄弟元素中排行倒数第 n 个

E:first-child    一个 E 元素,是它父元素的第一个子元素

E:last-child    一个 E 元素,是它父元素的最后一个子元素

E:first-of-type    一个 E 元素,是它同类型兄弟元素中的第一个

E:last-of-type    一个 E 元素,是它同类型的兄弟元素中的最后一个

E:only-child    一个 E 元素,是它父元素的唯一一个子元素

E:only-of-type    一个 E 元素,是它同类型的兄弟元素的唯一一个(没有别的同类的兄弟)

E:empty    一个没有子元素的 E 元素

E:link    一个没有被访问过的,作为超链接的锚点的 E 元素

E:visited    一个被访问过的锚点 E 元素  

E:active    一个正处于某些用户 *** 作状态的 E 元素

E:hover    一个鼠标滑过的 E 元素

E:focus     一个获得用户焦点的 E 元素

E:target    一个做为起 Refer 制定锚点的元素(url hash 相关)

E:lang(fr)    一个 language 是 fr 的 E 元素  

E:enabled    一个UI *** 作上 enabled 的 E 元素

E:disabled    一个 UI *** 作上 disabled 的 E 元素  

E:checked    一个 UI *** 作上状态为 checked 的 E 元素

E::first-line    E 元素中格式化后的第一行

E::first-letter    E 元素的第一个字母

E::before    在 E 元素之前生成的内容

E::after     在 E 元素之后生成的内容

E.warning    一个class 属性包含 warning 的 E 元素

E#myid    一个 ID 为 myid 的 E 元素

E:not(s)    一个不匹配简单的选择器 s 的 E 元素

E F    一个作为 E 元素后代的 F 元素

E >F    一个作为 E 元素子元素的 F 元素

E + F    一个紧跟在 E 元素后面的 F 元素

E ~ F    一个出现在 E 元素前面(紧挨着)的 F 元素


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7067776.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-01
下一篇 2023-04-01

发表评论

登录后才能评论

评论列表(0条)

保存