Blogger Information
Blog 26
fans 1
comment 1
visits 19833
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
《选择器优先级与属性简写方式》20201216
杨凡的博客
Original
649 people have browsed it

选择器优先级

状态匹配

链接四种状态:顺序是固定的,不能写反。
  1. 默认,没有访问/点的的状态:a:link{...}
  2. 已访问过的状态:a:visited{...}
  3. 悬停的状态:a:hover{...}
  4. 激活,当鼠标点击压下去的时候:a:active{...}

优先级

  1. 当选择器相同的时候,与书写顺序有关,后面的样式覆盖前面的
  2. 当选择器不同时,与优先级相关,级别高的覆盖级别低的,class的优先级大于标签(tag)
  3. 如果仍想提升选择器的优先级,我们应该用id级
  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>选择器的优先级</title>
  7. <style>
  8. p{
  9. color: green;
  10. }
  11. .cp{
  12. color: red;
  13. }
  14. #pp{
  15. color: pink;
  16. }
  17. </style>
  18. </head>
  19. <body>
  20. <p class="cp" id="pp">PHP中文网</p>
  21. </body>
  22. </html>

总结:ID(ID选择器)>class(类选择器)>tag(标签选择器)

优先级提权方式

  1. 根据选择器优先级,有一个计算公式:[id选择器数量,class选择器数量,tag选择器数量]可以理解为申明的选择器越多,权限越高
  2. 根据计算公式,使用tag、class、ID组合来进行提权

总结:根据优先级及计算公式可以理解为如下:

  1. 多个标签选择器组合>单个标签选择器,忽略顺序
  2. 1个类选择器>多个标签选择器组合,忽略顺序
  3. 1个id选择器>多个类选择器组合,忽略顺序

可以理解为进制的进位关系,高位大于低位,低位要超越高位必须有进位并且大于原先的高位才行,如果标签选择器要大于类选择器,那就需要一个类选择器➕一个标签选择器才可。

字体与字体图标

字体属性与简写

  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>属性的简写</title>
  7. <style>
  8. /* 字体属性 */
  9. .title{
  10. /* 字体 */
  11. font-family: sans-serif;
  12. /* 字体大小 */
  13. font-size: 50px;
  14. /* 字体样式 */
  15. font-style: italic;
  16. /* 字体粗细 */
  17. font-weight: lighter;
  18. }
  19. .title2{
  20. /* 简写 */
  21. font: italic lighter 50px sans-serif;
  22. }
  23. </style>
  24. </head>
  25. <body>
  26. <div class="title">PHP中文网</div>
  27. <div class="title2">PHP中文网2</div>
  28. </body>
  29. </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>字体图标引入</title>
  7. <!-- 引入字体样式 -->
  8. <!-- <link rel="stylesheet" href="icon-font/iconfont.css"> -->
  9. <style>
  10. /* 引入字体样式 */
  11. @font-face {
  12. font-family: 'iconfont';
  13. src: url('icon-font/iconfont.eot');
  14. src: url('icon-font/iconfont.eot?#iefix') format('embedded-opentype'),
  15. url('icon-font/iconfont.woff2') format('woff2'),
  16. url('icon-font/iconfont.woff') format('woff'),
  17. url('icon-font/iconfont.ttf') format('truetype'),
  18. url('icon-font/iconfont.svg#iconfont') format('svg');
  19. }
  20. .iconfont {
  21. font-family: "iconfont" !important;
  22. font-size: 16px;
  23. font-style: normal;
  24. -webkit-font-smoothing: antialiased;
  25. -moz-osx-font-smoothing: grayscale;
  26. }
  27. </style>
  28. </head>
  29. <body>
  30. <i class="iconfont">&#xe607;大家好</i>
  31. </body>
  32. </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>盒模型的属性缩写</title>
  7. <style>
  8. .box{
  9. /* 盒子宽 */
  10. width: 300px;
  11. /* 盒子高 */
  12. height: 300px;
  13. /* 背景颜色 */
  14. background: pink;
  15. box-sizing: border-box;
  16. }
  17. .box{
  18. /* 边框属性 */
  19. /* 每个边框可以设置三个属性:宽度 样式 颜色 */
  20. /* 上边框样式 */
  21. border-top-style: solid;
  22. /* 上边框宽度 */
  23. border-top-width:3px;
  24. /* 上边框颜色 */
  25. border-top-color: blue;
  26. border-left: red solid 5px;
  27. border-right: red solid 5px;
  28. border-bottom: blue solid 3px;
  29. }
  30. .box{
  31. /* 内边距 */
  32. /* padding: 上 右 下 左 */
  33. padding: 5px 10px 15px 20px;
  34. /* 背景裁切 */
  35. background-clip: content-box;
  36. }
  37. .box{
  38. /* 内边距 */
  39. /* margin: 上 右 下 左 */
  40. margin: 20px;
  41. }
  42. </style>
  43. </head>
  44. <body>
  45. <div class="box"></div>
  46. </body>
  47. </html>

总结:

  1. 所有的元素在页面都是一个默认的矩形框
  2. 元素框的四周有:内边距、外边、外边距
  3. padding,margin,border 的每一条边都可以单独设置属
  4. pading 和 margin 是背景透明的,所以只能设置宽度
  5. border除了可以设置宽度, 还可以设置样式和颜色
  6. 背景色会延伸到内边距范围内
Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments