博客列表 >选择器优先级与提权方式、字体与字体图标、盒模型常用属性的缩写方案

选择器优先级与提权方式、字体与字体图标、盒模型常用属性的缩写方案

手机用户1576673622
手机用户1576673622原创
2021年01月03日 17:28:49570浏览

1.选择器优先级与提权方式

  • 优先级
    选择器相同时候,和写作顺序有关系,后面的覆盖前面的。

    1. /* 无效 */
    2. h2 {
    3. color: gold;
    4. }
    5. /* 有效 */
    6. h2 {
    7. color: green;
    8. }

    选择器不相同的时候,和优先级有关,级别高的覆盖低的。
    id > class > tag

    1. /* 优先级从低到高 */
    2. /* 无效 */
    3. h2 {
    4. color: green;
    5. }
    6. /* 无效 */
    7. .on {
    8. color: violet
    9. }
    10. /* 有效 */
    11. #foo {
    12. color: blue;
    13. }
  • 优先级提权方式
    计算公式:[id选择器的数量, class选择器的数量, tag选择器的数量]
    例子:[0,0,1] < [0,0,999] <[0,1,0] < [0,99,0] < [1,0,0]
    例子(优先级从低到高):

    1. /* [0,1,1] */
    2. h2.on {
    3. color: red;
    4. }
    5. /* [0,1,2] */
    6. body h2.on {
    7. color: skyblue;
    8. }
    9. /* [0,1,3] */
    10. html body h2.on {
    11. color: teal;
    12. }
    13. /* [0,2,3] */
    14. .on.off {
    15. color: red;
    16. }
    17. /* [1,0,0] */
    18. #foo {
    19. color: teal;
    20. }
    21. /* [1,0,1] */
    22. h2#foo {
    23. color: red;
    24. }
    25. /* [1,1,0] */
    26. #foo.on {
    27. color: seagreen;
    28. }

2.字体与字体图标

  • 字体调整
    例子:

    1. /* 字体属性 */
    2. .title {
    3. /* 字体 */
    4. font-family: sans-serif;
    5. /* 字号 */
    6. font-size: 16px;
    7. /* 字样 */
    8. font-style: italic;
    9. /* 粗细 */
    10. font-weight:
    11. /* 简写 */
    12. /* 第一个样式 第二个粗细 第三个大小 第四个字体*/
    13. font: italic lighter 36px sans-serif;
    14. }
  • 字体图标
    在阿里素材库下载素材代码,按照提示操作。
    复制

    1. .iconfont {
    2. font-family: "iconfont" !important;
    3. font-size: 38px;
    4. color: skyblue;
    5. font-style: normal;
    6. -webkit-font-smoothing: antialiased;
    7. -moz-osx-font-smoothing: grayscale;
    8. }

    调整

    1. .iconfont.icon-kehuguanli {
    2. color: red;
    3. font-size: 50px;
    4. }

    调用

    1. <span class="iconfont icon-kehuguanli"></span>

    3.盒模型常用属性的缩写方案

  • 边框
    1. .box {
    2. /* 边框 */
    3. /* 每个边框可以设置三个属性: 宽度,样式,颜色 */
    4. border-top-width: 5px;
    5. border-top-color: red;
    6. border-top-style: solid;
    7. /* 边框简写,顺序可以随意 */
    8. border-top: 5px red solid;
    9. border-top: rgb(255, 0, 255) solid 5px;
    10. /* 其他边框,比如下边框也可以单独设置 */
    11. border-bottom: 10px red dashed;
    12. /* 如果边框一样可以直接简写 border */
    13. border: 5px solid #000;
    14. }
  • 内边距

    1. .box {
    2. /* 内边距 */
    3. /* padding: 上 右 下 左; 按顺时针方向*/
    4. padding: 5px 10px 15px 20px;
    5. /* 页面看不到是因为padding是透明的,且背景色会自动扩展到padding */
    6. /* 将背景色裁切到到内容区 */
    7. background-clip: content-box;
    8. /* 当左右相等,而上下不相等,使用三值语法 */
    9. padding: 10px 20px 15px;
    10. /* 当左右相等,上下也相等,使用二值语法 */
    11. padding: 10px 30px;
    12. /* 如果四个方向全相等,使用单值语法 */
    13. padding: 10px;
    14. /* 总结,当使用三值和二值时,只需要记住第二个永远表示左右就可以了 */
    15. }
  • 外边距
    1. .box {
    2. /* 外边距:控制多个盒子之间的排列间距 */
    3. /* 四值,顺时针,上右下左 */
    4. margin: 5px 8px 10px 15px;
    5. /* 三值,左右相等,上下不等 */
    6. margin: 10px 30px 15px;
    7. /* 二值,左右相等,上下也相等 */
    8. margin: 10px 15px;
    9. /* 单值,四个方向全相等 */
    10. margin: 8px;
    11. }
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议