权重

!important >id>class | 属性 >标签>*

  1. div{
  2. background-color: yellow !important;
  3. }
  4. .box{
  5. background-color: pink;
  6. }
  7. [class="box"]{
  8. background-color: purple;
  9. }
  10. #box {
  11. background-color: blue;
  12. }
  13. </style>
  14. <div id="box" class="box" style="width: 100px; height:100px"></div>

image.png

选择器 复合选择器

派生选择器

  1. <style>
  2. strong em {
  3. color: green;
  4. }
  5. </style>
  6. <p>派生选择器 父子选择器</p>
  7. <strong>
  8. <em>你好,蓝轨迹!</em>
  9. </strong>
  10. <p>
  11. <em>你好,蓝轨迹!</em>
  12. </p>

image.png

  1. <style>
  2. .content em{
  3. color:green;
  4. }
  5. </style>
  6. <strong class="content">
  7. <em>你好,蓝轨迹!</em>
  8. </strong>
  9. <strong class="content1">
  10. <em>你好,蓝轨迹!</em>
  11. </strong>
  1. <style>
  2. #content #text {
  3. color: green;
  4. }
  5. </style>
  6. <strong id="content">
  7. <em id="text">你好,蓝轨迹!</em>
  8. </strong>
  9. <strong id="content1">
  10. <em id="text1">你好,蓝轨迹!</em>
  11. </strong>

image.png
以前不可以,不变绿,现在可以变绿了

  1. <style>
  2. div span{
  3. color: green;
  4. }
  5. </style>
  6. <div>
  7. <h1>
  8. 你好,<span>蓝轨迹</span>
  9. </h1>
  10. </div>
  11. <div>
  12. 你好,<span>蓝轨迹</span>
  13. </div>

image.png
都变成绿色,越级可以选择

权重

* 0
标签,伪元素 1
class,属性,伪类 10
id 100
内联样式 1000
!important 正无穷

上面数值不是10进制,变不是简单的1,10,100,而是256进制的,差别非常大

数学 正无穷=正无穷+1
计算机 正无穷<正无穷+1

  1. <style>
  2. #div_id h1{
  3. color: pink;
  4. }
  5. .div-class .h1-class {
  6. color: purple;
  7. }
  8. .div-class #h1_div.h1-class{
  9. color: red;
  10. }
  11. </style>
  12. <div id="div_id" class="div-class">
  13. <h1 id="h1-id" class="h1-class">
  14. 你好,蓝轨迹
  15. </h1>
  16. </div>

image.png
一般不用

选择器

并列选择器

  1. <style>
  2. h1.title {
  3. color: blue;
  4. }
  5. </style>
  6. <h1 class="title">你好,蓝轨迹!</h1>
  7. <p class="title">你好,WEB!</p>

image.png
选择同时符合条件的,可以在之前加上标签名,比如div.box
企业里是不加的,初学者可以加入,学习时加上,看得很清楚

  1. <style>
  2. .box {
  3. width: 100px;
  4. height: 100px;
  5. }
  6. .big-box {
  7. width: 200px;
  8. height: 200px;
  9. }
  10. .box.box1{
  11. background-color: green;
  12. }
  13. .box.box2{
  14. background-color: blue;
  15. }
  16. .big-box.box1{
  17. background-color: purple;
  18. }
  19. .big-box.box2{
  20. background-color: red;
  21. }
  22. </style>
  23. <p>box box1 green</p>
  24. <p>box box2 blue</p>
  25. <p>big-box box1 purple</p>
  26. <p>big-box box2 red</p>
  27. <div class="box box1"></div>
  28. <div class="box box2"></div>
  29. <div class="big-box box1"></div>
  30. <div class="big-box box2"></div>

image.png

  1. 文本提示样式类
  2. 所有文本都是粗体
  3. 1、success 成功的提示 green
  4. 2、warning 警告的提示 orange
  5. 3、danger 失败的提示 red
  6. 有这样的需求,先写html,还是css?先写css
  7. <style>
  8. .tip{
  9. font-weight: bold;
  10. }
  11. .tip.tip-success{
  12. color: green;
  13. }
  14. .tip.tip-warning{
  15. color: orange;
  16. }
  17. .tip.tip-danger{
  18. color: red;
  19. }
  20. </style>
  21. <p class="tip tip-success" >1、success 成功的提示 green</p>
  22. <p class="tip tip-warning" > 2、warning 警告的提示 orange</p>
  23. <p class="tip tip-danger" > 3、danger 失败的提示 red</p>

image.png
写css封装,可以直接用
自己封装,不用boostrap

分组标签

buitton标签和input标签

  1. <style>
  2. span{
  3. color: purple;
  4. text-decoration: underline;
  5. cursor: pointer;
  6. }
  7. button,input[type="submit"]{
  8. cursor: not-allowed;
  9. }
  10. </style>
  11. <a href="">你好,蓝轨迹</a>
  12. <br>
  13. <span>
  14. 你好,蓝轨迹
  15. </span>
  16. <br>
  17. <button disabled="disabled">提交</button>
  18. <input type="submit" disabled="disabled">

浏览器寻找标签方式

从后往前,从左到右

  1. <style>
  2. .nav header h3 span {
  3. color: red
  4. }
  5. </style>
  6. <div class="nav">
  7. <header>
  8. <h3>
  9. <span>234</span>
  10. </h3>
  11. </header>
  12. <div>
  13. <ul>
  14. <li>
  15. <a href="">123</a>
  16. </li>
  17. </ul>
  18. </div>
  19. </div>

image.png

Button

  1. <style>
  2. button{
  3. border: none;
  4. background-color: green;
  5. }
  6. </style>
  7. <button>按钮</button>
  8. <button type="submit">按钮</button>

作业

写一个简单的button类
image.png