CSS基础属性、盒子模型、层模型(定位)、浮动流
基础属性
font-size:n px; //设置字符的大小(高)
font-weight:bold; //设置字符的粗细 normal默认标准字符 lighter更细的字符 bold加粗字符 bolder更粗字符 数字值100~900越来越粗(只能整百数)
font-style:italic; //设置字符斜体
font-family:arail; //设置字符字体 具体值可以百度
color:#0000FF;//字体颜色 可以是英文、颜色代码、颜色函数
border:1px solid black;//给容器加个盒子(设置容器边框属性) 复合属性 第一个值为border-width 第二个值为border-style 第三个值为border-color
text-align:right; //文字对齐方式,left center right
line-height:n px; //文字行高 另单行文本的行高等于容器高度可以实现单行文本垂直居中效果
text-indent:2em; //首行缩进两个字符 1em = 1 * font-size = 1*16 = 16px
text-decoration:line-through;//中划线 none没有线 underline下划线 overline上划线
//所以在开发过程中要做到结构样式行为相分离,不使用用html的em等掺杂css效果的标签,以便维护。
cursor:;鼠标提示符
关于html标签企业开发
1.行级元素、内联元素 inline:
feature:内容决定元素所占位置 不可以通过css改变宽高
span strong em a del
2.块级元素 block:
feature:独占一行 可以通过css改变宽高
div p ul li ol form address
3.行级块元素inline-block
feature:内容决定元素所站位置 可以通过css改变宽高
img
凡是带有inline的元素,都有文字特性,所以如img这种标签中间隔空格会导致图片之间有空隙,在上传至服务器时会进行代码压缩解决这个问题,所以在本地做网页的时候在img标签之间不加空格和换行符会解决这个问题。
盒子模型
CSS css盒子模型 又称框模型 (Box Model) ,包含了元素内容(content)、内边距(padding)、边框(border)、外边距(margin)几个要素。如图:
图中最内部的框是元素的实际内容,也就是元素框,紧挨着元素框外部的是内边距padding,其次是边框(border),然后最外层是外边距(margin),整个构成了框模型。通常我们设置的背景显示区域,就是内容、内边距、边框这一块范围。而外边距margin是透明的,不会遮挡周边的其他元素。
那么,元素框的总宽度 = 元素(element)的width + padding的左边距和右边距的值 + margin的左边距和右边距的值 + border的左右宽度;
元素框的总高度 = 元素(element)的height + padding的上下边距的值 + margin的上下边距的值 + border的上下宽度。
Position定位
在选择器的代码块中 position:定位方式; left right 其中任一个与top bottom 任一个进行定位
body的默认margin是8px,一般情况下会在通配符选择器初始化margin和padding为0px
1.绝对定位absolute:脱离原来位置进行定位,当用absolute进行定位的时候,自己的位置就从原来的层面被释放
相对于最近的有定位的父级进行定位,如果没有这个父级,则相对于文档进行定位
2.相对定位relative:保留原来位置进行定位
相对于自己初始位置进行定位
开发时用relative作为参照物,用absolute进行定位
3.广告定位fixed:无论文档怎么滚动,被定位的元素一直在所定位的位置。
元素居中:将left top设置成50%,再将此元素上外边距和左外边距回撤半个身位 用负号进行回撤
浮动流
float:left;left或者right left为左浮动 right为右浮动
浮动元素会产生浮动流,所有产生了浮动流的元素,块级元素看不到浮动元素
产生了BFC的元素和文本类属性(inline)的元素以及文本都能看到浮动元素
如果需要清除浮动流造成的影响,可以用一个空<p></p>标签,在css选中此p标签用clear:both/left/right;清楚浮动流影响,但会改变html页面结构,所以要用到伪元素,选择器::after是这个标签后面的那个伪元素所以选择好伪元素后要将content=""; clear:both; display:block;//设置成块级元素独占一行
--------------------------------------------------------
如果给一个元素加了position定位或者float浮动,这个元素在内部会自动转换为inline-block类型,可以设置宽高。