博客列表 >css样式表(自定义样式)来源和实例展示,css优先级冲突解决方案

css样式表(自定义样式)来源和实例展示,css优先级冲突解决方案

N.
N.原创
2020年10月10日 15:05:041193浏览

css样式表(自定义)来源

  • css样式表(自定义)来源有三类
  1. 样式表来自当前文档的<style> *{} </style>标签,html代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <title>Document</title>
  7. <style>
  8. p { text-align: center;
  9. color: blue;
  10. font-size: small; }
  11. </style>
  12. </head>
  13. <body>
  14. <h1>实例</h1>
  15. <p>这段字体是通过内部样式表也就是标签来完成字体居中、变成蓝色、缩小</p>
  16. </body>
  17. </html>

效果图:


2.样式表来自当前行内元素的渲染:<style="...">,html代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <title>Document</title>
  7. </head>
  8. <body>
  9. <h1>实例</h1>
  10. <p style="text-align: center; color: red;">这段字体是通过当前行内元素&lt;style="..."&gt;来完成字体居中、颜色变成红色</p>
  11. </body>
  12. </html>

效果图



3.样式表来自于外部资源,通常使用<link>引入,html代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <title>Document</title>
  7. <link rel="stylesheet" href="1009.css">
  8. </head>
  9. <body>
  10. <h1>这行文字通过`&lt;link&gt;`标签引用地址为1009.css的外部样式表把字体变为橙色并且居中</h1>
  11. <p>这行文字通过`&lt;link&gt;`标签引用地址为1009.css的外部样式表改变字体颜色为红色并居中</p>
  12. </body>
  13. </html>

css代码如下


  1. /* 选择器h1 选择器p */
  2. /* 选择器是写在声明块前面的标识符,用来选择页面中一个或多个元素 */
  3. /* 声明: 属性color: 值green 属性text-align;值center*/
  4. /* 声明是由属性和属性值组成 */
  5. h1{color: orange; text-align: center;}
  6. /* 声明块: 使用大括号 将多个声明包裹起来 */
  7. /* 声明块由一个或者多个声明组成,包裹在大括号中间 */
  8. p{color:red; text;text-align: center;}
  9. /* 规则集是由声明块和选择器组成 */

代码截图:


效果图


css优先级解决方案

  • css选择器优先级顺序

文档内标签(<style>*{}</style>)< class( 类属性)< id,因为id级别太高,标签不够灵活,考虑到css的样式复用特性,建议优先使用class类属性作为选择器;


  • css选择器优先级冲突解决方案
序号 案例 id class tag 标识
1 thml head header h1 0 0 4 0,0,4
2 head header.page-header h1 0 1 2 0,1,2,
3 .page-header .title 0 2 0 0,2,0,
4 #page-title 1 0 0 1,0,0,

序号1代码实例和效果图:

图片里左上方测试文字显示是蓝色的,选择器包含4个tag,0个id和0个class类属性;


序号2代码实例和效果图:


图片里左上方测试文字之前是蓝色的,现在变成红色,选择器包含3个tag,0个id和1个class类属性,说明选择器包含3个tag和一个class属性优先级大于只包含4tag属性的选择器,class类属性优先级大于tag;


序号3代码实例和效果图


左上方测试字体之前是红色的,使用包含两个class类属性,0个tag,0个id的选择器后,字体变成黄色,说明此选择器优先级大于前两个选择器,


序号4代码实例和效果图

左上方测试字体之前是黄色的,使用包含1个id,0个class,0个tag的选择器后,字体变成紫色,说明此选择器优先级大于前三个选择器,也证明id、class、tag三者id属性优先级最高;

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议