博客列表 >1.box-sizing属性 2.伪类选择器 3.媒体查询

1.box-sizing属性 2.伪类选择器 3.媒体查询

choa fan
choa fan原创
2021年09月26日 10:50:05537浏览

一、box-sizing属性解决了什么问题?

  1. box-sizing: border-box;

通过收缩原来的内容区大小,来保证盒子在页面中的占据的空间不变

就是说,为元素指定的任何内边距和边框都将在已设定的宽度和高度内进行绘制。

二、结构伪类选择器

  1. ul li:first-child {}
  2. ul li:last-child {}
  3. ul li:nth-child(3) {}
  4. /* 倒数第二个 */
  5. .list > li:neh-list-of-type(2) {}

nth-child 参数详解

  • 注意:本质上就是选中第几个子元素

  • n 可以是数字、关键字、公式

  • n 如果是数字,就是选中第几个

  • 常见的关键字有 even 偶数、odd 奇数

  • 常见的公式如下(如果 n 是公式,则从 0 开始计算)

  • 但是第 0 个元素或者超出了元素的个数会被忽略

  1. <style>
  2. /* 偶数 */
  3. ul li:nth-child(even) {
  4. background-color: aquamarine;
  5. }
  6. /* 奇数 */
  7. ul li:nth-child(odd) {
  8. background-color: blueviolet;
  9. }
  10. /*n 是公式,从 0 开始计算 */
  11. ul li:nth-child(n) {
  12. background-color: lightcoral;
  13. }
  14. /* 偶数 */
  15. ul li:nth-child(2n) {
  16. background-color: lightskyblue;
  17. }
  18. /* 奇数 */
  19. ul li:nth-child(2n + 1) {
  20. background-color: lightsalmon;
  21. }
  22. /* 选择第 0 5 10 15, 应该怎么选 */
  23. ul li:nth-child(5n) {
  24. background-color: orangered;
  25. }
  26. /* n + 5 就是从第5个开始往后选择 */
  27. ul li:nth-child(n + 5) {
  28. background-color: peru;
  29. }
  30. /* -n + 5 前五个 */
  31. ul li:nth-child(-n + 5) {
  32. background-color: tan;
  33. }
  34. </style>

nth-childnt-of-type 的区别

  • nth-child 选择父元素里面的第几个子元素,不管是第几个类型
  • nt-of-type 选择指定类型的元素

:not() 去掉元素

在一个集合中去掉某一些元素

  1. .list > :nth-of-type(3):not(li:nth-of-type(3)) {}

伪元素选择器

伪类选择器注意事项

  • beforeafter 必须有 content 属性
  • before 在内容前面,after 在内容后面
  • beforeafter 创建的是一个元素,但是属于行内元素
  • 创建出来的元素在 Dom 中查找不到,所以称为伪元素
  • 伪元素和标签选择器一样,权重为 1
  1. <style>
  2. div {
  3. width: 100px;
  4. height: 100px;
  5. border: 1px solid lightcoral;
  6. }
  7. div::after,
  8. div::before {
  9. width: 20px;
  10. height: 50px;
  11. text-align: center;
  12. display: inline-block;
  13. }
  14. div::after {
  15. content: '德';
  16. background-color: lightskyblue;
  17. }
  18. div::before {
  19. content: '道';
  20. background-color: mediumaquamarine;
  21. }
  22. </style>

三、媒体查询

媒体查询(Media Query)是CSS3新语法。

  • 使用 @media查询,可以针对不同的媒体类型定义不同的样式
  • @media 可以针对不同的屏幕尺寸设置不同的样式
  • 当你重置浏览器大小的过程中,页面也会根据浏览器的宽度和高度重新渲染页面
  • 目前针对很多苹果手机、Android手机,平板等设备都用得到多媒体查询

媒体查询语法规范

  • @media开头 注意@符号
  • mediatype 媒体类型
  • 关键字 and not only
  • media feature 媒体特性必须有小括号包含
  1. @media mediatype and|not|only (media feature) {
  2. CSS-Code;
  3. }

1) 查询类型

将不同的终端设备划分成不同的类型,称为媒体类型

2) 关键字

关键字将媒体类型或多个媒体特性连接到一起做为媒体查询的条件。

  • and:可以将多个媒体特性连接到一起,相当于“且”的意思。
  • not:排除某个媒体类型,相当于“非”的意思,可以省略。
  • only:指定某个特定的媒体类型,可以省略。

3) 媒体特性

每种媒体类型都具体各自不同的特性,根据不同媒体类型的媒体特性设置不同的展示风格。

4) 媒体查询书写规则

注意: 为了防止混乱,要按照从小到大或者从大到小的顺序来写

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议