1.Div盒子模型

html5 div样式 div样式设计_html

网页就如同砌房子一样,它由一块一块砖组成,而这些砖就是div

2.Div的主要内容

html5 div样式 div样式设计_前端_02

注意:盒子与盒子之间的距离才是外边距

3.具体内容

利用CSS对div进行修饰

  1. 边框颜色:border-color;

宽度:border-width;

             样式:border-style;(决定边框是用实线还是粗线)

可以简写为:border : 1px solid red;

html5 div样式 div样式设计_前端_03

  1. 内边距 padding即内容到边框的距离

html5 div样式 div样式设计_块元素_04

内边距padding使用时可控制内容的位置

padding: 20px; 说明上下左右边框距离内容20px;

同时可指定一边来控制距离eg:padding-left: 20px; 说明内容只和左边距相差20px

3)外边距margin 指div块之间的距离

也可指定一边来确定块与块之间的距离,eg:margin-top; margin-bottom;

4)盒子模型圆角边框

border-radius: 20px 10px 50px 30px;

html5 div样式 div样式设计_块元素_05

即实现右下角圆点效果

轮播图翻页功能(即又上图右下角圆形的设计)

html5 div样式 div样式设计_html_06

html5 div样式 div样式设计_html_07

List-style: none; 用于去除左边的黑点;

html5 div样式 div样式设计_块元素_08

列边框

html5 div样式 div样式设计_html5 div样式_09

html5 div样式 div样式设计_html5 div样式_10

加宽高

html5 div样式 div样式设计_html_11

html5 div样式 div样式设计_css_12

将矩形变成一个圆形

html5 div样式 div样式设计_css_13

 

html5 div样式 div样式设计_html5 div样式_14

将文字水平居中

html5 div样式 div样式设计_块元素_15

 

html5 div样式 div样式设计_html_16

将文字垂直居中(即行高等于框高)

html5 div样式 div样式设计_html5 div样式_17

 

html5 div样式 div样式设计_前端_18

将列变成行

html5 div样式 div样式设计_html5 div样式_19

 

html5 div样式 div样式设计_块元素_20

块与块之间的间距很紧,设置外边距margin

html5 div样式 div样式设计_前端_21

html5 div样式 div样式设计_前端_22

html5 div样式 div样式设计_html5 div样式_23

 

html5 div样式 div样式设计_html_24

 

对于border-radius: 1 2 3 4; 指的是分别对盒子中的1234四个角进行修改

Eg:

html5 div样式 div样式设计_css_25

html5 div样式 div样式设计_html5 div样式_26

将一个矩形盒子变成半圆

5)盒子阴影(box-shadow)

html5 div样式 div样式设计_块元素_27

html5 div样式 div样式设计_块元素_28

html5 div样式 div样式设计_html5 div样式_29

作用:将二维的图形转化为3D的效果

html5 div样式 div样式设计_css_30

 

体现效果:白键和黑键之间的阴影

4、浮动()

实现块元素和行元素之间来回的调换

html5 div样式 div样式设计_前端_31

display: inline; (使上下排版变成左右排版)

html5 div样式 div样式设计_css_32

 

html5 div样式 div样式设计_前端_33

html5 div样式 div样式设计_html5 div样式_34

 

Span是指内联元素排版,即左右排版

Display: block; (实现将左右排版变成上下排版)

html5 div样式 div样式设计_html5 div样式_35

 

html5 div样式 div样式设计_css_36

如何将aaabbb加宽

将行元素整成块元素,只有在块元素中才能实现调整宽度

Display: inline-block; 其中div既是inline(行元素)又是block(块元素);

html5 div样式 div样式设计_块元素_37

 

html5 div样式 div样式设计_css_38

 

 

5.浮动

html5 div样式 div样式设计_css_39

     

html5 div样式 div样式设计_html5 div样式_40

html5 div样式 div样式设计_块元素_41

html5 div样式 div样式设计_css_42

所谓的标准流元素就是没有加float修饰的块元素

html5 div样式 div样式设计_块元素_43

html5 div样式 div样式设计_css_44

假若A元素是标准流元素,而上一个是含有float:left修饰的元素(即非标准文档流)话,则A元素会被含有float:left修饰的元素覆盖,即标准流会被非标准流覆盖,就好比如:

html5 div样式 div样式设计_css_45

html5 div样式 div样式设计_前端_46

6.解决浮动带来父级框塌陷的问题

a.利用clear

减少父级宽度,内容不加float浮动话,父级框将会被内容所撑起

html5 div样式 div样式设计_块元素_47

html5 div样式 div样式设计_html5 div样式_48

假若减少父级高度,两个div同时都加上浮动话,父级将会塌方

html5 div样式 div样式设计_块元素_49

html5 div样式 div样式设计_html_50

html5 div样式 div样式设计_前端_51

 

html5 div样式 div样式设计_html5 div样式_52

html5 div样式 div样式设计_前端_53

 

 

html5 div样式 div样式设计_块元素_54

 

                                                       将黄色换上clear:both;后

黄色div本身就在浮动,只是把影响它的浮动清除掉;

b.不好用(省略)

c.利用父级overflow:hidden; 解决父级边框塌陷问题

html5 div样式 div样式设计_css_55

html5 div样式 div样式设计_块元素_56

html5 div样式 div样式设计_html5 div样式_57

d.父级添加伪类after(较难但经常使用)

html5 div样式 div样式设计_块元素_58

Content:‘’;在父级后面添加一个内容,内容为空;

Display: block; 把添加的内容转化为块元素;

Clear:both;清除元素两边的浮动;

7.CSS定位

1)相对定位(position: relative;)

html5 div样式 div样式设计_html_59

相对定位的盒子仍在标准文档流中的意思是盒子移动前的位置仍将保留,不能被替代;

html5 div样式 div样式设计_css_60

html5 div样式 div样式设计_块元素_61

html5 div样式 div样式设计_块元素_62

Eg:left: -100px;

     Top:+100px; 指的是左移100px,下移100px

3)绝对定位 position: absolute; (它的位置得看已经定位的父标签)

html5 div样式 div样式设计_html_63

 

html5 div样式 div样式设计_css_64

html5 div样式 div样式设计_前端_65

html5 div样式 div样式设计_html5 div样式_66

 

html5 div样式 div样式设计_块元素_67

 

 

 

相对定位和绝对定位的区别在于绝对定位元素移走后,它的位置不会保留,位置会被下一个元素覆盖,而相对定位则是哪怕我这个位置空着,也不给你占。相对定位用得多一点。

4)固定定位position: fixed; (它会随着滚动条一起移动)

html5 div样式 div样式设计_块元素_68

html5 div样式 div样式设计_css_69

html5 div样式 div样式设计_html5 div样式_70

 

5)粘性定位 position: sticky;

html5 div样式 div样式设计_css_71

html5 div样式 div样式设计_前端_72

html5 div样式 div样式设计_css_73

很明显,目前top不是0px;

html5 div样式 div样式设计_html_74

html5 div样式 div样式设计_css_75

  

当滚动条下拉,超过一定范围后,此时的top是0px;

6)控制层级z-index: 数字;

html5 div样式 div样式设计_html5 div样式_76

html5 div样式 div样式设计_html_77

哪个的层级越高,就显示哪个色

7.CSS形变 transform

html5 div样式 div样式设计_块元素_78

html5 div样式 div样式设计_块元素_79

  

html5 div样式 div样式设计_css_80

html5 div样式 div样式设计_html_81

Translate又分为X轴Y轴进行,这种区别与绝对定位话,这种更适合较小距离间的移动

Eg:

html5 div样式 div样式设计_html5 div样式_82

明显鼠标移上去,页面有移动的效果,外加阴影

Tramsform: translate(100px,100px) 指的是x轴y轴向右向下平移100px

Scale(0.5)对元素缩放一倍;

html5 div样式 div样式设计_块元素_83

html5 div样式 div样式设计_html5 div样式_84

Rotate(30deg)顺时针旋转30度

html5 div样式 div样式设计_html5 div样式_85

 

html5 div样式 div样式设计_css_86

倾斜变成菱形

html5 div样式 div样式设计_前端_87

 

html5 div样式 div样式设计_块元素_88

实战:利用transform实现照片墙效果

html5 div样式 div样式设计_html5 div样式_89

实现照片墙关键:鼠标经过照片时照片放大,且将照片摆正

使用伪类hover实现,鼠标经过所实现效果

html5 div样式 div样式设计_html5 div样式_90

html5 div样式 div样式设计_前端_91

9.CSS过渡(transition)

  过渡是一个描述过程的,是一个从一种状态到另一种状态的过程,就好比如上面所说的照片,当鼠标经过时,照片由静到动。

使用过渡元素目的:即当鼠标经过时,图片缓慢地转动,给读者带来视觉的冲击;

html5 div样式 div样式设计_前端_92

html5 div样式 div样式设计_html_93

写过渡的步骤(先定义后触发)

html5 div样式 div样式设计_前端_94

html5 div样式 div样式设计_html5 div样式_95

 

html5 div样式 div样式设计_html5 div样式_96

Transition: all(指的是对触发中所有元素进行过渡),这是固定的,记住!

利用hover来触发过渡;

html5 div样式 div样式设计_前端_97

html5 div样式 div样式设计_前端_98

一般触发机制都用hover;

作业:

html5 div样式 div样式设计_块元素_99

   

html5 div样式 div样式设计_html5 div样式_100

html5 div样式 div样式设计_css_101

 

html5 div样式 div样式设计_块元素_102

html5 div样式 div样式设计_html5 div样式_103

 

html5 div样式 div样式设计_前端_104