博主信息
博文 11
粉丝 0
评论 0
访问量 12738
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
css 元素样式来源和优先级冲突解决方案
YwQ
原创
936人浏览过

必做: css 元素样式来源有哪些,实例演示
选做: css 优先级冲突的解决方案

浏览器样式来源

一. 浏览器代理样式

(也就是浏览器自带的默认样式,比如字体颜色大小和边距)

二. 自定义样式

  1. 当前文档头部设置样式
  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. h1 {
  9. color: rebeccapurple;
  10. }
  11. h2 {
  12. color: blue;
  13. }
  14. .meme {
  15. color: plum;
  16. }
  17. #love {
  18. color: red;
  19. }
  20. </style>
  21. </head>
  22. <body>
  23. <h1>你好呀</h1>
  24. <h2>hello</h2>
  25. <p class="meme">么么哒</p>
  26. <b id="love">爱你</b>
  27. </body>
  28. </html>
  29. 注意:id > class类 > tag标签
  1. 当前标签的行内元素
  1. <body>
  2. <h1 style="font-style: oblique">你好呀</h1>
  3. <h2 style="color: lightblue">hello</h2>
  4. <p class="meme">么么哒</p>
  5. <b id="love">爱你</b>
  6. </body>
  1. 链接外联样式表
  1. 创建一个css文件,命名为style.css,内容如下:
  2. h1 {
  3. color: rebeccapurple;
  4. }
  5. h2 {
  6. color: blue;
  7. }
  8. .meme {
  9. color: plum;
  10. }
  11. #love {
  12. color: red;
  13. }

第一种方式(单个文件)

  1. <style>
  2. @import url(style.css);
  3. </style>

第 2 种方式(多个文件,最常用)

<link rel="stylesheet" href="style.css" />

css 优先级冲突的解决方案

css 优先级排序
!important(强制展示)>行内元素>id 选择器>class 类选择器>tag 标签
选择器的优先级方案主要是解决 id 和 class 和 tag 的冲突

  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. /*0,0,1*/
  9. h2 {
  10. color: blue;
  11. }
  12. /*0,0,4*/
  13. html body h1 b {
  14. color: rebeccapurple;
  15. }
  16. /*0,1,0*/
  17. .meme {
  18. color: plum;
  19. }
  20. /*1,0,0*/
  21. #love {
  22. color: red;
  23. }
  24. /*1,0,4*/
  25. html body h1 b#love {
  26. color: green;
  27. }
  28. /*1,0,3*/
  29. body h1 b#love {
  30. color: yellow;
  31. }
  32. /*1,2,3*/
  33. body.min h1.meme b#love {
  34. color: palevioletred;
  35. }
  36. </style>
  37. </head>
  38. <body class="min">
  39. <h1 class="meme"><b id="love">爱你</b></h1>
  40. </body>
  41. </html>

总结:
最后显示颜色为 1,2,3 的 palevioletred。
示例中的 (body.min h1.meme b#love) 1,2,3 中 1 代表有一个 id,2 代表有一个 class,3 代表有三个 tag。
可以看成一个数字,数字越大优先级越高。

批改老师:天蓬老师天蓬老师

批改状态:合格

老师批语:估计现在会计算优先级了吧, 就是数数
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学