当前位置:   article > 正文

CSS基础知识总结

css基础知识总结

目录

一、基础认识

二、选择器

三、字体和文字样式

四、背景相关属性

五、元素的显示模式

六、css特性

1.继承性

2.层叠性

3.优先性

七、盒子模型

盒子模型的组成部分:

清除元素默认的内外边距:

让盒子水平居中:

外边距合并现象:

八、结构伪类选择器

九、伪元素

十、浮动

小米布局:

网页导航案例 :

十一、定位

相对定位

绝对定位

让盒子水平居中的案例(子绝父相)

固定定位

元素层级关系:

#博学谷IT学习技术支持#

一、基础认识

css的中文又叫做:层叠样式表。

语法:选择器 + {属性名: 属性值}、

css引入方式:1.内嵌式,写在style标签中。通常放在head中。2.行内式:写在style标签中,写在标签中。3.外联式:单独写一个css文件,通过link把该文件引入。

二、选择器

选择器在html中写法在css中写法
标签选择器就是标签本身

div{

 }

类选择器class= "banner".banner {
}
id选择器id = “wrapper”#wrapper {
}
通配符选择器

* {

}

此外还有:后代选择器、子代选择器、交集选择器、并列(兄弟)选择器、伪类选择器

三、字体和文字样式

字体样式css属性属性值
大小font-size数字+px
粗细font-weight数字/英文
是否倾斜font-stylenormal/italic
字体系列font-family
文字颜色color英文/#333/rgba()
行高line-height数字/数字+px
文本缩进text-indent数字+px/数字+em
水平居中text-alignleft/right/center
文本修饰
text-decoration
一般用none

四、背景相关属性

1.背景颜色

属性名:background-color,值可以写 :例子:red/#fff/rgba(0,0,0,0)

2.背景图片

属性名:background-image

属性值:ul(加入图片的连接)

3.背景平铺

属性名:background-repeat

属性值:

repeat默认值,水平和垂直方向都平埔
no-repeat不平铺
repeat-x沿着水平方向平铺
repeat-y沿着垂直方向平铺

4.背景位置

属性名:

background-position

属性值:水平方向 垂直方向;

可以使用方位名词,例如:right top;表示右上

可以使用坐标系 :0 0;表示盒子的左上角

5.背景相关属性连写方式

属性值:background

属性值:color image repeat position

五、元素的显示模式

元素一共有三种显示模式:

第一种,行内元素 :a、span 、b、u、i、s、strong、ins、em、del……

第二种:块级元素  :div、p、h系列、ul、li、dl、dt、dd、form、header、nav、footer……

第三种:行内块元素   :input、textarea、button、select……

元素模式转换:

属性名 :display

属性值:

inline :转换成行内元素;

block:转换成块级元素;

inline-block :转换成行内块元素。

六、css特性

1.继承性

子元素继承父元素的相关属性

像文字全部属性子元素都可以继承

但元素如果有浏览器默认的样式,继承就会失效。

例如:   a标签的颜色不可以继承;h系列的标签字体大小不可以继承。

2.层叠性

当给一个标签的属性设置了不同的值时,浏览器工作方式是从上往下进行,所以落在最后的值会生效。

3.优先性

继承 < 通配符选择器 < 标签选择器 < 类选择器 < id选择器 < 行内样式 < !important

七、盒子模型

盒子模型的组成部分:

内容部分 :content       设置宽高

内边距:padding           在内容与边框之间的边距

边框:border                  盒子周围

外边距 :margin             边框以外的边距

设置      内容区域:

width : 100px;

height :100px;

设置边框:

border : solid   10px   #333;

此时盒子的大小会变大,宽  =   width +   左右边框   =120px  ;高   =    height    +     上下边框 =120px;

设置内边距:

padding : 20px 20px 20px 20px;

这四个值分别表示:上   右   下    左      边距

此时盒子的大小也会变化·,具体大小不予计算。

设置外边距:

margin :   10px  10px  10px  10px;

这四个值分别表示:上   右   下    左      边距

注意: CSS3中,给出一个属性 :

box-sizing   :    border-box

只要给出了宽和高,设置边框和内边距都不会影响盒子的大小。

清除元素默认的内外边距:

比较通用的写法:

*  {

margin : 0;

padding  : 0;

}

让盒子水平居中:

margin : 0  auto  ;

外边距合并现象:

对于两个垂直的块级元素,设定上下margin值时,外边距会合并,计算的时候按照外边距大的计算。

外边距塌陷现象:互相嵌套 块级元素,子元素的 margin-top 会作用在父元素上,导致父元素一起往下移动 ,解决变法:

1. 给父元素设置border-top 或者 padding-top(分隔父子元素的margin-top)
2. 给父元素设置overflow:hidden
3. 转换成行内块元素
4. 设置浮动

八、结构伪类选择器

选择器说明
E:first-child ()选出E元素的第一个子元素
E:last-child ()选出E元素的最后一个子元素
E:nth-child (n)n可以取1,2,3....,n=1,选取E元素的第一个子元素
E:nth-last-child (n)n=5,选取E元素倒数第5个子元素

说明:

对于 :   nth-child(n)

里面的n可以去n,2n,2n+1,odd,-n+5..................

取4n表示:选取父元素里面第4个、第8个、第12个.......子元素。

取-n+5表示找的子元素是前五个

n+5表示找的子元素是从第五个以后的子元素

九、伪元素

由 CSS 模拟出的标签效果
伪元素说明
::before在元素内容之前添加一个行内元素
::after在元素内容之后加一个行内元素

代码:

  1. .footer .wrapper li::before {
  2. content: '';
  3. display: inline-block;
  4. margin-right: 19px;
  5. width: 58px;
  6. height: 58px;
  7. background-image: url(../images/sprites.png);
  8. background-position: 0 0;
  9. vertical-align: middle;
  10. }

其中conner : '  '  ;是必须要添加的。

十、浮动

属性名:float

属性值:

left  :  左浮动

right : 右浮动

. 浮动元素会脱离标准流(简称:脱标),在标准流中不占位置
浮动元素比标准流高半个级别,可以覆盖标准流中的元素

小米布局:

代码 :

  1. <div class="box">
  2. <div class="fl"></div>
  3. <div class="fr">
  4. <ul>
  5. <li></li>
  6. <li></li>
  7. <li></li>
  8. <li></li>
  9. <li></li>
  10. <li></li>
  11. <li></li>
  12. <li></li>
  13. </ul>
  14. </div>
  15. </div>
  1. <style>
  2. * {
  3. margin: 0;
  4. padding: 0;
  5. }
  6. li {
  7. list-style: none;
  8. }
  9. .box {
  10. margin: 0 auto;
  11. margin-top: 50px;
  12. width: 1210px;
  13. height: 450px;
  14. background-color: pink;
  15. }
  16. .fl {
  17. float: left;
  18. width: 300px;
  19. height: 450px;
  20. background-color: green;
  21. }
  22. .fr {
  23. float: right;
  24. width: 910px;
  25. height: 450px;
  26. }
  27. .fr li {
  28. float: left;
  29. margin-bottom: 10px;
  30. margin-right: 10px;
  31. width: 220px;
  32. height: 220px;
  33. background-color: blue;
  34. }
  35. .fr li:nth-child(4n) {
  36. margin-right: 0;
  37. }
  38. </style>

显示的结果:

网页导航案例 :

代码:

  1. <div class="nav">
  2. <ul>
  3. <li><a href="#">腾讯视频</a></li>
  4. <li><a href="#">爱奇艺</a></li>
  5. <li><a href="#">B站</a></li>
  6. <li><a href="#">淘宝</a></li>
  7. <li><a href="#">芒果视频</a></li>
  8. <li><a href="#">天下足球</a></li>
  9. <li><a href="#">抖音</a></li>
  10. </ul>
  11. </div>
  1. <style>
  2. * {
  3. margin: 0;
  4. padding: 0px;
  5. }
  6. li {
  7. list-style: none;
  8. }
  9. a {
  10. text-decoration: none;
  11. }
  12. .nav {
  13. margin: 100px auto;
  14. width: 611px;
  15. height: 50px;
  16. background-color: pink;
  17. }
  18. .nav li {
  19. float: left;
  20. height: 50px;
  21. }
  22. .nav li a {
  23. display: block;
  24. padding: 0 20px;
  25. height: 50px;
  26. line-height: 50px;
  27. color: #333;
  28. }
  29. .nav li a:hover {
  30. background-color: green;
  31. color: #fff;
  32. }
  33. </style>

十一、定位

属性名:

position

静态定位:  static

相对定位:  relative

绝对定位   :absolute

固定定位  :fixed

设定偏移值:

方向属性名属性值含义
水平left 数字+px距离左边的距离
水平right数字+px距离右边的距离
垂直top数字+px距离上边的距离
垂直bottom数字+px距离下边的距离

相对定位

position  : relative;

相对自己原来的位置进行移动

在页面中占位置-不脱标

绝对定位

position  :  absolute;

默认相对于浏览器可视区域进行定位

在页面中不占有位置-脱标

绝对定位相对于谁移动?
1. 祖先元素中没有定位 → 默认相对于浏览器进行移动
2. 祖先元素中有定位 → 相对于 最近的 有定位 的祖先元素进行移动
经常用的就是:子绝父相。就是父亲使用相对定位,儿子使用绝对定位。

让盒子水平居中的案例(子绝父相)

1.先让盒子水平移动父亲盒子宽度一半left:50%

2.然后移动自己盒子的一半:

普通做法:margin-left:负的子盒子宽度的一半
缺点:子盒子宽度变化后需要重新改代码
优化做法:transform:translateX(-50%)
优点:表示沿着X轴负方向(往左)始终移动自己宽度的一半,子盒子宽度变化不需要更改代码
代码:
  1. <div class="big">
  2. <div class="small"></div>
  3. </div>
  1. <style>
  2. .big {
  3. position: relative;
  4. margin: 0 auto;
  5. width: 800px;
  6. height: 300px;
  7. background-color: pink;
  8. }
  9. .small {
  10. position: absolute;
  11. left: 50%;
  12. transform: translateX(-50%);
  13. width: 200px;
  14. height: 100px;
  15. background-color: blue;
  16. }
  17. </style>

显示结果:

垂直居中的做法相类似。

固定定位

position :  fixed;

相对于浏览器可视区域进行移动
在页面中不占位置 → 已经脱标

元素层级关系:

不同布局方式元素的层级关系:
标准流 < 浮动 < 定位
不同定位之间的层级关系:
相对、绝对、固定默认层级相同
此时HTML中写在下面的元素层级更高,会覆盖上面的元素
改变定位元素的层级:
属性名:z-index
属性值:数字
数字越大,层级越高

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号