css:css认知总结

两盒软妹~` 提交于 2019-11-30 10:25:52

什么是css?

css英文全称Cascading Style Sheets,中文全称层叠样式表,作用是编辑、排版、控制html的样式。

 

选择器(普通选择器;伪类选择器;伪元素选择器)

属性选择器:

e[att^=’val’]{}:某属性开头包含某字符串

e[att$=’val’]{}:某属性结尾包含某字符串

e[att*=’val’]{}:某属性包含某字符串

结构性伪类选择器

:root{}:根元素选择器,控制html(推荐使用)

input:not([type=’submit’]){}:否定选择器,选择除此以外的其他元素

Div:empty{}:空元素选择器,选择没有任何内容的元素,包括空格

:target{}

ul>li:first-child {color: red;}:子元素选择器,不是后代选择器

ul>li:last-child {color: red;}:子元素选择器,不是后代选择器

div > div:nth-child(2){}:选择一个或多个子元素(2,2n,odd,even)

div > div:nth-last-child(2){}:同上,但是从最后一个子元素开始计算

div > div:nth-of-type(5){}:指定某类子元素的某个或多个

div > div:nth-last-of-type(5){}:同上,但是从最后一个子元素开始计算

div > p:first-of-type {}指定某种元素的第一个

div > div:last-of-type{}:指定某类子元素的最后一个

li:only-child {}:独生子女选择器,其父元素只有它一个子元素

div p:only-of-type{}:这个div只有一个p类型的子元素,则生效

 

 

 

 

 

 

 

伪类选择器:伪类是很大的一类简单选择器,它是选择器能力的一种补充。在实际使用中,我还是建议你尽量通过合适的id和class来标识元素,结束伪类的使用。最好只在不得不使用伪类的场景使用伪类,这对于css代码的性能和可读性的都有好处。伪类选择器是一系列由css规定好的选择器,它们以冒号开头,伪类由普通型和函数型。

伪元素选择器:无中生有,硬生生的造出一个元素来,这对于实现一些特殊的小特效非常实用。

 

  • 布局(浮动,定位,flex)
  • 盒子模型(标准盒子,怪异盒子,margin,padding)

Margin

当给两个标准流下兄弟盒子 设置垂直方向上的margin时,那么以较大的为准,那么我们称这种现象叫塌陷。没法解决,我们称为这种技巧叫“奇淫技巧”。记住这种现象,在布局垂直方向盒子的时候注意margin的用法。 当我们给两个标准流下的兄弟盒子设置浮动之后,就不会出现margin塌陷的问题。

1.使用margin: 0 auto;水平居中盒子必须有width,要有明确width,文字水平居中使用text-align: center; 2.只有标准流下的盒子 才能使用margin:0 auto; 当一个盒子浮动了,固定定位,绝对定位(后面会讲),margin:0 auto; 不能用了 3.margin:0 auto;居中盒子。而不是居中文本,文字水平居中使用text-align: center;

 

  • 元素类型(块级,行内,行内块)
  • 文字
  • 背景(背景图片,颜色)

背景图片

background-color: red; 在没有背景图片覆盖的范围显示背景颜色 background-image: url('timg.jpg'); 设置背景图片

background-origin:背景图片的原始起始位置(边框,padding,内容)

background-clip:剪裁背景图片(边框外,内填充外,内容区域外)

background-size:背景图大小(auto,长度值,百分比,cover,contain)

一个元素多张背景图的写法

background-image:url(1.jpg),

      url(2.jpg),

                url(3.jpg);

background-position: left top, center top, right top;

background-repeat: no-repeat, no-repeat, no-repeat;

background-repeat: no-repeat; 设置图片不重复

background-position: right top; 图片的位置 左中右x 上中下y /*left center right /top center bottom*/ 

background-attachment: fixed; 在窗口中固定图片的位置背景图不会随着鼠标滚动而滚动

 background:red url("timg.jpg") no-repeat left center; 把所有的设置综合写在background

 

  • Css3

圆角

阴影(外阴影,内阴影,多阴影)

 

阴影模糊半径:此参数可选,其值只能是为正值,如果其值为0时,表示阴影不具有模糊效果,其值越大阴影的边缘就越模糊;

阴影扩展半径:此参数可选,其值可以是正负值,如果值为正,则整个阴影都延展扩大,反之值为负值时,则缩小;

文本阴影text-shadow; x  y  blur  color;

X-Offset:表示阴影的水平偏移距离,其值为正值时阴影向右偏移,反之向左偏移;      

Y-Offset:是指阴影的垂直偏移距离,如果其值是正值时,阴影向下偏移,反之向上偏移;

Blur:是指阴影的模糊程度,其值不能是负值,如果值越大,阴影越模糊,反之阴影越清晰,如果不需要阴影模糊可以将Blur值设置为0;

Color:是指阴影的颜色,其可以使用rgba色。

 

Css3动画

animation使用的是贝塞尔曲线

animation-name:动画的名称,这是一个keyframes类型的值

animation-duration:动画的时长

animation-timing-function:动画的时间曲线

animation-delay:动画开始前的延迟

animation-iteration-count:动画的播放次数

animation-direction:动画的方向

transition:(贝塞尔曲线;相对animation更加简单的一个属性)

transition-property:要变换的属性

transition-duration:变换的时长

transition-timing-function:时间曲线

transition-delay:延迟

transform:像元素定义2d或3d转换,比如旋转、缩放、倾斜等(如果元素宽高不是整数或偶数,则可能出现模糊或抖动)。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!