对前面知识的重新理解

浮动:

1.当为一个元素设置浮动以后,元素会立即脱离文档流,他下边的元素会立即向上移动。

2.元素浮动以后,会尽量向页面的左上或右上浮动,直到遇上父元素的边框或其他的浮动元素

3.如果浮动元素上面是一个没有浮动的块元素,则浮动元素不会超过块元素。

4.浮动元素不会超过他上边的兄弟元素,最多一边齐。

溢出处理:

overflow可以处理子元素溢出父元素。

1.overflow:visible:是默认值,不会做处理,元素会在父元素外显示。

2.overflow:hidden:溢出的内容会被裁剪,不会显示。

3.overflow:scroll:添加垂直竖直滚动条,不论内容是否溢出。

4.over:auto:会根据需求添加。

5:overflow:hidden与display:none的区别:hidden消失后仍会占据位置,none则不会。

元素在文档流中的特点:

块元素;

1.块元素在文档流中会独占一行,块元素会自上向下排列。

2.块元素在文档流中的默认宽度是父元素的100%。

3.块元素在文档流中的高度默认被高度撑开。

内联元素:

1.内联元素在文档流中只占自身的大小,会默认从左向右排列。

2.如果一行中不足以容纳所有的元素,则会换到下一行,继续由左向右。

3.在文档流中,内联元素的宽度和高度都会被内容撑开。

display的作用:

display可以修改元素的类型。

1.diplay:inlinne:可以将元素作为一个内联元素显示。

2.display:block:可以将一个元素转换为块元素显示。

3.diplay:Inline-block:将一个元素转换为行内块元素,既有行内元素的特点又有块元素的特点。既可以设置宽高,又不会独占一行。

span元素当被浮动以后可以设置宽高。

块元素与内联元素:

块元素里可以包含块元素,但p标签里不可以包含任何元素。div主要用来网页的布局.

内联元素span主要用来选中文本内容将其进行修改。a标签属于内联元素,可以包含任何元素,除了他自己。

选择器:

选择器分组(并集选择器):语法:选择器1逗号选择器2逗号选择器3逗号   表示同时选中多个满足同样css样式的选择器。

复合选择器(交集选择器):语法:选择器紧紧贴在一起,不用加任何东西。表示可以满足多个选择器的元素。

父元素指直接包含子元素的元素。子元素直接被父元素包含的元素。向这种情况则表示span的父元素是p,祖父是div.

<div>

<p><span></span></p>

</div>

祖先元素指直接或间接包含后代元素的元素。后代元素指直接或间接被父元素包含的元素。比如div也可以是p的祖先元素。

父元素可以是祖先元素。子元素也可以是后代元素。

兄弟元素指拥有相同父元素的元素。

后代元素选择器:父元素空格子元素{}    子元素选择器:父元素>子元素{}

伪类元素指元素的状态。如link,visited,hover,active.    伪元素指原则元素中的一些特殊的位置。如first-letter表示第一个字.p:first-letter{}  如first-line表示第一行.p:first-line{}

属性选择器。根据元素的属性来选择元素   如p:[tittle](如tittle属性可以给任何标签添加)。选取含有指定属性值的元素如p:[tittle="hello"]。  p:[tittle^="ab]表示以ab 开头。

兄弟元素选择器:

语法:前一个+后一个。可以选中一个元素紧挨着的指定的兄弟元素。

语法:前一个~后一个。选中一个元素后紧挨着的所有的兄弟元素。

否定伪类:

语法:p:not(选择器){} 。可以从已选择的元素中剔除特定的某些元素。

css子元素会继承祖先元素的样式,但背景相关的样式除外。

优先级的规则:

内联样式:优先级1000. id选择器:优先级100. 类和伪类:优先级10. 元素选择器:优先级1. 通配:优先级0. 继承的样式:没有优先级。

如果选择器的优先级一样,则使用靠后的样式。

并集选择器中的优先级是单独计算。

涉及到a的伪类共有4个:link,visited,hover,active.这四个选择器的优先级是一样的。

定位元素:

定为元素的层级如果一样,则下边的元素会盖住上边的。可以用z-index来设置元素的层级,层级越高,越优先显示。如z-index:1。

父元素的层级在高也盖不住子元素。

定位:

定位的默认值static.

相对定位相当于元素在原来的文档流之中的位置,不会脱离文档流,但元素开启相对定位之后会提高一个层级,也就是说,会盖住原来的兄弟元素。并且元素开启相对定位不会改变元素的性质,块级还是块级,内联还是内联。

绝对定位开启会使元素脱离文档流,绝对定位是相当于离他最近的开启了定位的祖先元素进行定位的。如果所有的祖先元素都没有开启定位,则相对于浏览器窗口进行定位。绝对定位也会使元素提升一个层级。

并且绝对定位会改变元素的性质。内联元素变为块元素。块元素的宽高会被内容撑开。

固定定位也是一种绝对定位,他的大部分特点与绝对定位相同。

元素的层级问题:

如果元素都开启了定位,且层级一样,则下面的会盖住下面的。所以可以通过z-index可以设置层级,也就是说可以设置z轴。可以把z-indez设置成正整数,同时层级越高,越优先显示。并且没有开启定位的元素,则不可以使用z-index.还有一点就是父元素的层级在高,也不会盖住子元素。

透明:

设置元素的透明背景可以通过opacity设置一个0-1的数来设置,离0越近,则越透明。还有一种方式是filter:alpha(opacity=0-100);

posted @ 2020-09-02 06:15  马雪峰1  阅读(153)  评论(0编辑  收藏  举报