缺点:1)显示样式和数据是绑定的在一起
优点:1)理解比较简单
注:div用来存放需要显示的数据/文字/图表等,CSS是用来指定放在div中的内容怎样显示,包括这些内容的位置和外观,从而做到数据和显示相互分离的效果。
选择符:又称选择器,指明网页中要应用样式规则的元素,如上面的例子将网页中所有的段(p)的文字将变成蓝色,字体大小设置为12px,而其他的元素(如ol)不会受到影响。
声明:在英文大括号“{}”中的的就是声明,属性和值之间用英文冒号“:”分隔。当有多条声明时,中间可以英文分号“;”分隔。
css样式表就是把css代码直接写在现有的HTML标签中(写在元素的开始标签中,值写在style=“”双引号中,多个样式用分号隔开),如:
4)类选择器和ID选择器的区别
例如:如下写法是错误的
例如:如下写法是正确的
例如:如下写法是错误的
/*添加边框样式(粗细为1px, 颜色为红色的实线)*/
子选择器与后代选择器的区别:>作用于元素的第一个后代,空格作用于元素的所有后代。
目前为止,可以兼容所有浏览器的“伪类选择符”就是a标签上使用:hover了(伪类选择符还有很多,但是不能兼容所有的浏览器)
CSS的某些样式是具有继承性的。继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代。
如某种颜色应用于p标签,这个颜色设置不仅应用p标签,还应用于p标签中的所有子元素文本,这里子元素为span标签。
块级元素的特点:每个块级元素都从新的一行开始,并且其后的元素也另起一行;元素的高度、宽度、行高、顶和底边距都可设置;元素宽度在不设置的情况下,是它本身父容器的100%(和父元素的宽度一致),除非设定一个宽度。
内联元素的特点:和其他元素都在一行上;元素的高度、宽度、顶部和底部编剧不可设置;元素的宽度就是它保护的文字或图片的宽度,不可改变。
/* 将内联元素a转换为块状元素 */
/* 将块状元素div转换成内联元素 */
/*在默认情况下宽度不起作用*/
/*在默认情况下高度不起作用*/
/*设置背景颜色为粉色*/
/*设置文本居中显示*/
一个元素的实际宽度(盒子宽度)=左边界+左边框+左填充+内容宽度+右填充+右边框+右边界。元素的高度同理。
※ 内边距——padding可用来设置元素内容和边框之间的距离,分上、右、下、左(顺时针)
※ 外边距——margin可用来设置元素和其他元素之间的距离,分上、右、下、左(顺时针)
1)块状元素都会在所处的包含元素内自上而下按顺序垂直延伸分布,因为在默认状态下,块状元素的宽度都为100%。
这条语句的作用将元素从文档流中拖出来,然后使用left、right、top、bottom属性相对于其最接近的一个具有定位属性的父包含块进行绝对定位。如果不存在这样的包含块,则相对于body元素,即相对于浏览器窗口。
/* 示例:设置div标签相对于浏览器,(相对于以前位置右上角)向左移动100px,向下移动20px */
它通过left、right、top、bottom属性确定元素在正常文档流中的偏移位置。相对定位完成的过程是首先按static(float)方式生成一个元素(并且元素像层一样浮动了起来),然后相对于以前的位置移动,移动的方向和幅度由left、right、top、bottom属性确定,偏移前的位置保留不动。
/* 示例:为div设置相对定位,(相对于以前位置左上角)向右移动100象素,向下移动50象素。 */
与absolute定位类型类似,但它的相对移动的坐标是视图(屏幕内的网页窗口)本身。由于视图本身是固定的,它不会随浏览器窗口的滚动条滚动而变化。
结果:——拖动滚动条位置不变
设置display: flex属性可以把块级元素在一排显示。flex需要添加在父元素上,改变子元素的排列顺序。默认为从左往右依次排列,且和父元素左边没有间隙。
3)给子元素设置flex占比