Blogger Information
Blog 12
fans 0
comment 0
visits 17584
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
结构伪类与状态伪类及盒模型常用属性
php001
Original
450 people have browsed it

结构伪类:

  1. /* an+b */
  2. .item li:nth-of-type(3){
  3. background-color: blue;
  4. }
  5. /* 倒数 */
  6. /* .item li:nth-last-of-type(-1n+3){
  7. background-color: chartreuse;
  8. } */
  9. /* 偶数
  10. .item >:nth-of-type(even):hover{
  11. background-color: brown;
  12. } */
  13. /* 奇数
  14. .item >:nth-of-type(odd):hover{
  15. background-color: aqua;
  16. } */
  • 效果图:
    结构伪类

    状态伪类:

  • 状态伪类:指通过某个元素的状态来选择对应的元素
    1. <style>
    2. /* 获取被禁用的元素 */
    3. input:disabled {
    4. color: red;
    5. background-color: yellow;
    6. }
    7. /* 获取被默认选择中的单选按钮 */
    8. input:checked + label {
    9. color: red;
    10. }
    11. button {
    12. height: 30px;
    13. border: none;
    14. outline: none;
    15. background-color: seagreen;
    16. color: white;
    17. }
    18. /* 鼠标移入的状态变化 */
    19. button:hover {
    20. /* 光标 */
    21. cursor: pointer;
    22. background-color: coral;
    23. }
    24. /* 获得焦点时变化 */
    25. input:focus {
    26. background-color: cyan;
    27. }
    28. </style>
  • 效果图:
    状态伪类

    盒模型

  • 常用属性
  1. width
  2. height
  3. padding
  4. border
  5. margin
  • 盒模型简化方案:四值、三值、双值、单值

    • 四值: 顺时针, 上, 右,下,左:padding: 5px 10px 15px 20px;
    • 三值, 中间永远表示左/右:padding: 5px 10px 15px;
    • 双值, 第1个上下,第2个左右:padding: 5px 10px;
    • 单值, 四个方向全相同:padding: 10px;

      1. <div class="box"></div>
      2. <style>
      3. /*
      4. 1. width
      5. 2. height
      6. 3. padding
      7. 4. border
      8. 5. margin
      9. */
      10. .box {
      11. /* 宽度 */
      12. width: 200px;
      13. /* 高度 */
      14. height: 100px;
      15. /* 不可见,是因为没有设置:可见属性 */
      16. /* 可见属性: 背景, 边框 */
      17. background-color: violet;
      18. /* 背景裁切,只覆盖到内容区, 不包括padding */
      19. background-clip: content-box;
      20. border: 5px solid;
      21. /* 可见属性: 宽度, 样式, 颜色 */
      22. /* padding: 内边距,是内容区与边框之间的填充物 */
      23. /* margin: 外边距, 控制当前盒子与其它元素之间的空隙 */
      24. /* 不可见属性: margin, padding */
      25. padding: 20px;
      26. /* margin: 20px; */
      27. /* 不可见的属性,只能设置宽度, 不能设置特征(颜色,样式) */
      28. /* padding,margin: 就像空间,无色无味 */
      29. /* 当前的盒子在页面中实际占据的空间大小是: 250 * 150 */
      30. /* 我当前设置的盒子大小应该是: 200 * 100 */
      31. /* 宽,度各相差了 50px */
      32. /* 页面中计算盒子的实际宽高, 不包括 外边距: margin */
      33. /* 总宽度: */
      34. /* border-left-width + padding-left + width + padding-right + border-right-width */
      35. /* 5 + 20 + 200 + 20 + 5 = 250px */
      36. /* 总高度: */
      37. /* border-top-width + padding-top + height + padding-bottom + border-bottom-width */
      38. /* 5 + 20 + 100 + 20 + 5 = 150px */
      39. /*
      40. 我们的本意是: 我设置的宽高就应该是盒子的最终大小,
      41. 而不是浏览器添加上内边距和边框后的计算大小
      42. */
      43. /* 推荐的盒子大小计算方式,可以简化页面布局 */
      44. box-sizing: border-box;
      45. /* 还原到w3c默认标准盒子计算方式 */
      46. /* box-sizing: content-box; */
      47. }
      48. .box {
      49. /* border-top: 宽度 样式 前景色 */
      50. border-top: 10px dashed blue;
      51. border-left: 10px dashed blue;
      52. /* 四条边一样的时候,可以只写border */
      53. border: 5px solid red;
      54. }
      55. .box {
      56. /* padding-left: 10px;
      57. padding-top: 5px;
      58. padding-right: 20px; */
      59. /* 简化方案: 顺时针方向 */
      60. /* 1. 四值: 顺时针, 上, 右,下,左 */
      61. padding: 5px 10px 15px 20px;
      62. /* 2. 三值, 中间永远表示左/右 */
      63. padding: 5px 10px 15px;
      64. /* 3. 双值, 第1个上下,第2个左右 */
      65. padding: 5px 10px;
      66. /* 三值,二值记忆方法: 第2个值永远表示左右 */
      67. /* 4. 单值, 四个方向全相同 */
      68. padding: 10px;
      69. }
      70. /* margin 的规则与padding完全一样, 大家自己练习 */
      71. </style>
  • 效果图
Correcting teacher:PHPzPHPz

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
Author's latest blog post