「这是我参与2022首次更文挑战的第14天,活动详情查看:2022首次更文挑战」
1. 关于calc
C3中使用calc函数动态计算值,例如:
**
.w {
width: calc(50vmax + 3rem);
padding: calc(1vw + 1em);
transform: rotate( calc(1turn + 28deg) );
background: hsl(100, calc(3 * 20%), 40%);
font-size: calc(50vw / 3);
}
也可以嵌套:
**
.w {
width: calc( 100% / calc(100px * 2) )
}
clac()已经得到普遍支持。对于不支持calc()的浏览器,整个属性值表达式将被忽略;
不过我们可以对那些不支持calc()的浏览器,使用一个固定值作为回退
**
.w {
width: 90%; /* Fallback for older browsers */
width: calc(100% - 50px);
}
2. 聊聊display:table和table标签
display:table和本身table是相对应的,区别在于,display:table能够让一个html元素和它的子节点像table 元素一样,使用基于表格的css布局,使我们能够轻松定义一个单元格的边界,背景等样式,而不会产生因为使用了table那样的制表标签导致的语义化问题。
之所以现在逐渐淘汰了table系表格元素,是因为用 div+css编写出来的文件比用 table边写出来的文件小,而且 table必须在页面完全加载后才显示,div则是逐行显示;另外table的嵌套性太多,没有 div 简洁
3. 说说position都有哪些值
使用position把元素放置在一个静态的,相对的,绝对的,固定的位置中
- static
设置为 static 的元素,他始终处于页面流给予的位置,static 元素会忽略任何top,buttom,left,right 声明 - relative
相对定位,可将元素相对于其原本正常位置移动 - absolute
绝对定位,相对于最近有定位的父级进行定位(如果无,则相对于文档进行定位) - fixed
固定定位,相对浏览器窗口的进行定位
4. 关于z-index
z-index用于设置元素的堆叠顺序。本质是设置一个定位元素沿 z 轴的位置,z 轴定义为垂直延伸到显示区的轴。如果为正数,则离用户更近,为负数则表示离用户更远
默认值为auto,表示堆叠顺序与父元素相等;其值还可以是inherit,表示从父元素继承 z-index属性的值
特别注意,z-index 仅能在定位元素上奏效
**
img{
position:absolute;
left:0px;
top:0px;
z-index:-1;
}
5. 说说CSS3有哪些新特性
CSS3的新特性中,在布局方面新增了 flex布局,在选择器方面新增了例如first-of-type,nth-child 等选择器,在盒模型方面添加了 box-sizing来改变盒模型,在动画方面增加了 animation,2d变换,3d 变换等,在颜色方面添加透明,rbga等,在字体方面允许嵌入字体和设置字体阴影,最后还有媒体查讯等