博客列表 >box-sizing 属性初探及伪类选择器的参数 an+b 的经典应用

box-sizing 属性初探及伪类选择器的参数 an+b 的经典应用

zg的php学习
zg的php学习原创
2021年09月25日 15:20:02462浏览

box-sizing 属性初探及伪类选择器的参数 an+b 的经典应用

box-sizing 属性的作用

box-sizing 属性用来定义盒模型的边界。

box-sizing:content-box | border-box

1. content-box

box-sizing 的默认值,对于所有接受 width,height 的元素,W3C 标准盒模型中,padding 和 border 不被包含在 width/height 中,width/height 定义的是内容区的边界,所以盒模型的实际宽度/高度 = width/height + padding + border 。

2. border-box

也被称为 IE 盒子,怪异盒子,盒模型的边界在边框处。width/height 定义的就是整个盒模型的大小,它是通过收缩内容区的大小,将 padding 和 border 包含在 width/height 中。

示例:

  1. <body>
  2. <div class="box c-box"></div>
  3. <div class="box b-box"></div>
  4. <style>
  5. .box {
  6. width: 100px;
  7. height: 100px;
  8. border: 10px solid blue;
  9. }
  10. .box.c-box {
  11. box-sizing: content-box;
  12. }
  13. .box.b-box {
  14. box-sizing: border-box;
  15. }
  16. </style>
  17. </body>

运行结果:
box-sizing


伪类选择器的参数 an+b 的应用

选择器:nth-of-type(an+b){声明块}

  • a:系数
  • n:计数器
  • b:偏移量
  1. <body>
  2. <ul class="list">
  3. <li>item01</li>
  4. <li>item02</li>
  5. <li>item03</li>
  6. <li>item04</li>
  7. <li>item05</li>
  8. <li>item06</li>
  9. <li>item07</li>
  10. <li>item08</li>
  11. </ul>
  12. </body>

1. 选择某一个

  1. .list > li:nth-of-type(3) { color: red; }

2. 选择前几个

  1. .list > li:nth-of-type(-n + 3) { color: red; }

3.选择指定的及其之后的

  1. .list > li:nth-of-type(n + 3) { color: red; }

4.选中偶数

  1. .list > li:nth-of-type(2n) { color: red; }

5.选中奇数

  1. .list > li:nth-of-type(2n+1) { color: red; }

如果需要从后往前选则可以使用:nth-last-of_type(an+b)


媒体查询

移动优先

  1. <style>
  2. /* 移动优先:从小屏幕到大屏幕 */
  3. @media (min-width: 480px) {
  4. html {
  5. font-size: 12px;
  6. }
  7. }
  8. @media (min-width: 640px) {
  9. html {
  10. font-size: 16px;
  11. }
  12. }
  13. @media (min-width: 720px) {
  14. html {
  15. font-size: 20px;
  16. }
  17. }
  18. </style>

PC 优先

  1. <style>
  2. /* 桌面优先/PC优先:从大屏到小屏 */
  3. @media (max-width: 720px) {
  4. html {
  5. font-size: 20px;
  6. }
  7. }
  8. @media (max-width: 640px) {
  9. html {
  10. font-size: 16px;
  11. }
  12. }
  13. @media (max-width: 480px) {
  14. html {
  15. font-size: 12px;
  16. }
  17. }
  18. /* 当屏幕大于720时的设置 */
  19. @media (min-width: 720px) {
  20. html {
  21. font-size: 20px;
  22. }
  23. }
  24. </style>
  • 移动优先是指媒体查询时从小屏到大屏,PC 优先则是指从大屏到小屏。
  • PC 优先时,要注意考虑最大边界的问题,需要设置一条 min_width,以保证当屏幕超过最大值时,不会因为超边界而影响效果。
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议