【css】通配符选择器&清除浏览器默认样式

html-css05

【css】通配符选择器&清除浏览器默认样式,第1张

写法:*{}

星号即为通配符选择器,写在其中的样式会应用页面到所有的元素中,所以使用的频率并不高,主要用于清除浏览器默认样式。

在使用各种元素的过程中,我们会发现很多元素都是有默认样式的,比如<body>标签有默认的padding值和margin值,<h1>和<p>标签有默认的行高字号,margin值,a标签有默认的下划线,列表前面有小圆点等等,常常会干扰我们进行页面的编写,所以我们可以事先使用通配符选择器进行浏览器默认样式清除。

更精准的清除方法

刚刚我们使用的通配符选择器,会给所有元素都设置一遍默认样式,解析的工作量会比较大,所以我们可以根据我的页面里到底有哪些元素需要清除,使用群组选择器写出更精确的清除默认样式css,如:

可以把它写入一个外部样式表reset.css,如果需要清除直接导入就可以啦。

1、清除在编写页面中由于浏览器默认样式带来的干扰。

2、兼容性更好,不同浏览器的默认样式可能会有所不同,如果不清楚可能会造成我们编写的页面在不同浏览器上的效果有所出入。

选择器部分文章:

选择器介绍(一)标签选择器、id选择器、类选择器

https://www.jianshu.com/p/d2f54bc64302

选择器介绍(二)后代选择器,子代选择器,交集选择器,并集(群组)选择器

https://www.jianshu.com/p/98f6788d0f54

通配符选择器&清除浏览器默认样式

https://www.jianshu.com/p/4eb179b4fdfc

有时候在写CSS的过程中,某些限制总是不起作用,这就涉及了CSS样式覆盖的问题。

查找一些教材中(w3schools等),只说css的顺序是“元素上的style” >“文件头上的style元素” >“外部样式文件”,但对于样式文件中的多个相同样式的优先级怎样排列,没有详细说明。经过测试和继续搜索,得知优先级如下排列:

1. 样式表的元素选择器选择越精确,则其中的样式优先级越高:

id选择器指定的样式 >类选择器指定的样式 >元素类型选择器指定的样式所以上例中,#navigator的样式优先级大于.current_block的优先级,及时.current_block是最新添加的,也不起作用。

2. 对于相同类型选择器制定的样式,在样式表文件中,越靠后的优先级越高

注意,这里是样式表文件中越靠后的优先级越高,而不是在元素class出现的顺序。比如.class2 在样式表中出现在.class1之后:

.class1 { color: black}

.class2 { color: red }

.class1 {color: black}

.class2 {color: red}

而某个元素指定class时采用 class="class2 class1"这种方式指定,此时虽然class1在元素中指定时排在class2的后面,但因为在样式表文件中class1处于class2前面,此时仍然是class2的优先级更高,color的属性为red,而非black。

3. 如果要让某个样式的优先级变高,可以使用!important来指定:

.class1 {color: black !important}  

.class2{color: red}

给按钮添加css样式有以下三种方法:

1,直接在元素上定义style,如下:

1

<input type="button" style="这里定义样式">

2,页面中内嵌样式,如下:

1

2

3

4

<style>

.btn{需要添加的样式}

</style>

<input type="button" class="btn">

3,外部引用css文件,如下:

1

<link rel="stylesheet" type="text/<a href="https://www.baidu.com/s?wd=css&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1Y4nyDsn1m1P1TzPHckPhwW0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPjnYnW0Ln1R" target="_blank" class="baidu-highlight">css</a>" href="这里是css文件的路径">