样式分类与选择器详解

样式分类

1.内联样式

1.1 默认样式:用户代理样式,是浏览器为每个元素预置的样式
1.2 继承样式:颜色,字体等样式,可由父级进行设置,子级直接继承
1.3 自定义样式:就是元素中的style属性设置的样式
1.4 优先级:自定义样式 > 继承样式 > 默认样式

内敛样式实例

  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>样式选择器练习</title>
  8. </head>
  9. <body style="color:red ;">
  10. <h1 style="color:blue ;">好好学习,天天向上</h1>
  11. </body>
  12. </html>

2.外部样式

2.1 通过link(属性即为静态样式管理,无位置要求)标签引入外部css代码文档,对html文件中的标签进行样式管理
2.2 html引入的css文档,为直接引用,无需html等开始或停止标签,直接书写标签对象+{样式内容}
2.3 优先级:自定义样式 > 外部样式 > 继承样式 > 默认样式,外部样式(css文档)通过权重区分优先级

外部样式>继承样式实例

  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>样式选择器练习</title>
  8. <link rel="stylesheet" href="style2.css">
  9. </head>
  10. <body style="color:red ;">
  11. <h1>好好学习,天天向上</h1>
  12. </body>
  13. </html>

css代码

  1. h1 {
  2. color: blueviolet;
  3. }

效果

自定义样式>外部样式实例

  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>样式选择器练习</title>
  8. <link rel="stylesheet" href="style2.css">
  9. </head>
  10. <body style="color:red ;">
  11. <h1 style="color: blue;">好好学习,天天向上</h1>
  12. </body>
  13. </html>

css代码

  1. h1 {
  2. color: blueviolet;
  3. }

效果

3外部样式优先级

3.1 id,class(或者属性),tag对应(百,十,个),优先级比较按照数学思维即可,举例:如(1,0,0)> (0,9,0) > (0,8,0) > (0,0,9)
3.2 (1,1,1)表示有一个id,一个class(属性),一个tag
3.3 !important:临时提高权重,调试使用,不建议商业代码使用,并且区分三级权重时候无法都用!important
3.4 在权重相同的情况,外部样式按照由上倒下,由左向右读取,后面的样式会覆盖前面的样式,相当于顺序执行css
3.5 其中群组选择器的权重,由各自标签的id或者class(属性)决定,之间互不干扰

权重比较实例

  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>样式选择器练习</title>
  8. <link rel="stylesheet" href="style2.css">
  9. </head>
  10. <body style="color:red ;">
  11. <h1 id="aaa"; class="bbb";>
  12. 好好学习天天向上
  13. </h1>
  14. </html>

css代码

  1. h1#aaa.bbb{
  2. color: violet;
  3. }
  4. h1#aaa{
  5. color: brown;
  6. }
  7. h1 {
  8. color: blueviolet;
  9. }

效果

4. 外部样式选择器

4.1 标签选择器,格式:标签名{css元素},例:h1 {color:red;}
4.2 属性选择器,格式:标签名[属性]{css元素},例:h1[title=”welcome”]{color:red}
4.3 群组选择器,格式:标签名1,2,3+id,class,或者[属性]{css元素},例:h1#aaa,h2#aaa{color:red}
4.4 通配选择器,格式:父标签+{css元素},通配的是子标签,通配多层标签,例:bdoy {color:red}

外部样式选择器实例

  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>样式选择器练习</title>
  8. <link rel="stylesheet" href="style2.css">
  9. </head>
  10. <body style="color:red ;">
  11. <h1 id="aaa" ; class="bbb" ; >
  12. 好好学习天天向上
  13. </h1>
  14. <h2 id="ccc" ; class="ddd" ; title="name">
  15. 同学们好
  16. </h2>
  17. <h2 id="eee" ; class="fff" ;>
  18. 你在干什么
  19. </h2>
  20. <h3 class="ggg">
  21. 老师好
  22. </h3>
  23. <div>
  24. <h2>
  25. 今天上班真忙
  26. </h2>
  27. <h2>
  28. 今天上班真闲
  29. </h2>
  30. <h2>
  31. 今天上班不忙不闲
  32. </h2>
  33. </div>
  34. </body>
  35. </html>

css代码

  1. h1{
  2. color:red;
  3. }
  4. h2[title="name"]{
  5. color: blue;
  6. }
  7. h2#eee,h3.ggg{
  8. color: green;
  9. }
  10. div *{
  11. color: aqua;
  12. }

效果

5.上下文选择器

5.1 子元素选择,用 > 号连接,格式: .list > .item{},对父类list,下面的子类item,进行选择,子类的子类不被选择
5.2 后代元素,用 “空格” 连接,格式: .list .item{},对父类list,下面的子类以及子类的子类item,前提是类相同,进行选择
5.3 相邻兄弟,用 + 号连接,格式:.list > .item.five + {},对父类list,下面的子类item.five,通过类对子元素精确选择,用+号以及通配符找到下一个
5.4 所有兄弟,用 ~ 号连接,格式:.list > .item.five ~ {},对父类list,下面的子类item.five,通过类对子元素精确选择,用~号以及通配符找到以下全部

上下文选择器实例

  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>样式选择器练习</title>
  8. <link rel="stylesheet" href="style2.css">
  9. </head>
  10. <body class="hhh">
  11. <h1 id="aaa" ; class="bbb" ; >
  12. 好好学习天天向上
  13. </h1>
  14. <h2 id="ccc" ; class="ddd" ; title="name">
  15. 同学们好
  16. </h2>
  17. <h2 id="eee" ; class="fff" ;>
  18. 你在干什么
  19. </h2>
  20. <h3 class="ggg">
  21. 老师好
  22. </h3>
  23. <div class="xxx">
  24. <h2 class="yyy">今天上班真忙
  25. <h3 class="yyy">今天上班真闲<h4 class="yyy">shang</h4></h3>
  26. </h2>
  27. <h2>
  28. 今天上班不忙不闲
  29. </h2>
  30. </div>
  31. <main class="name">
  32. <ul class="name1">
  33. <li>奥里给1</li>
  34. <li>奥里给2</li>
  35. <li class="name2">奥里给3</li>
  36. <li>奥里给4</li>
  37. <li>奥里给5</li>
  38. </ul>
  39. </main>
  40. </body>
  41. </html>

css代码

  1. .hhh > .bbb{
  2. color:red;
  3. }
  4. .xxx .yyy{
  5. color: blue;
  6. }
  7. .hhh > .ddd +*{
  8. color: yellow;
  9. }
  10. .name > .name1 > .name2 ~ *{
  11. color: green;
  12. }

效果

更多相关文章

  1. Android(安卓)View概述
  2. Android基本界面控件
  3. Android主题与Toolbar样式之间的关系
  4. android string.setSpan
  5. Android(安卓)最火快速开发框架AndroidAnnotations简介
  6. [导入]2010-03-06 传智播客—Android(六)通知、样式、主题、HTML
  7. 【Appetite】ionic3实录(四)微调Segment,并引出自定义组件概念
  8. Android字体多样式和动画TextDrawable
  9. android教父高焕堂 成都之行

随机推荐

  1. oracle中decode函数 VS mysql中的if函数
  2. mysql官方文档之Range Optimization
  3. MySqli 中预处理类 stmt
  4. 如何使用另一个表中的多个列替换表中的一
  5. 哪个更好的大查询或多个小查询?
  6. SQL:通过将两个列映射到彼此来更新表。
  7. mysql 基于position 恢复数据库
  8. MySQL导出和导入SQL脚本
  9. 如何获得MySQL中某一行的偏移量?
  10. mysql-5.7.10-winx64 绿色版安装办法