DIV+CSS

目录

页面布局常用选择器

页面布局常用属性:

浮动元素

浮动定位:

CSS清除浮动

清除浮动的常用方式:

position

相对定位:

绝对定位:

z-index

display属性

display常见的属性值:

隐藏和显示元素:

盒子模型:

外边距:

border边框

内边距

怪异盒模型:

实例


页面布局常用选择器

  • id选择器:#id
  • 类选择器:.Class
  • 关系选择器:div p,div>p,div,p
  • 伪类选择器:hover
  • 结构性伪类选择器:E:after、E:before、E:nth-child()、E:first-child、E:last-child

 

页面布局常用属性:

  • 字体属性:font-size
  • 文本属性:text-docoration、text-align
  • 首行缩进:text-indent
  • 行高:line-height
  • 宽高属性:width、height、min-height、max-height
  • 背景属性:background
  • 列表属性:list-style
  • 字体颜色:color
  • 定位属性:position
  • 布局属性:display
  • 浮动属性:float、clear
  • 盒子模型:border、margin、padding
  • 圆角模型:border-radius
  • 阴影:text-shadow、box-shadow

 

浮动元素

  • 浮动元素的外边缘不会超过其父元素的内边缘
  • 浮动元素不会互相重叠
  • 浮动元素不会上下浮动
  • 任何元素一旦浮动,display属性将完全失效均可以设置宽高,并且不会独占一行

 

浮动定位:

  • 将元素排除在普通流之外
  • 元素将不在页面中占据空间
  • 将浮动元素放置在包含框的左边或者右边
  • 浮动元素依旧位于包含框之内
  • 浮动的框可以向左或者向右移动,直到他的外边缘碰到包含框或另一个浮动框的边框为止

 

 

CSS清除浮动

  • 清除浮动是在使用了浮动之后必不可少,为了网站布局的效果,清除浮动也变得非常麻烦
  • 属性:clear
  • 值:left、right、both

 

清除浮动的常用方式:

  1. 结尾处加空div标签 clear:both(或在下一个元素上加clear:both;)
  2. 浮动元素的父级div定义:overflow:hidden
  3. 浮动元素的父元素定宽高 

 

 

 

position

position属性指定一个元素(静态的,相对的,绝对或固定)的定位方法的类型

absolute:生成绝对定位元素,相对于static定位以外的第一个父元素进行定位。元素的位置通过“left”“top”“right”以及“bottom”属性进行规定

fixed:生成绝对定位的元素,相对于浏览器窗口进行定位,元素的位置通过“left”“top”“right”以及“bottom”属性进行规定

relative:生成相对定位的元素,相对于其正常位置进行定位,因此,“left:20”会向元素的LEFT位置添加20像素

static:默认值,没有定位,元素出现在正常的流中(忽略top、bottom、left、right、或者z-index声明)

 

相对定位:

以当前为参照物为移动指定的距离

注意:相对定位,被定位的元素会占据原有的物理位置

 

绝对定位:

绝对定位的元素不会占据原有的物理位置,以其他元素作为参考物移动指定距离的定位方式

关于绝对定位的参考点:

1.如果元素外层元素是非static(有了除默认值以外的定位设置),那么这个外层元素就成为该元素的定位参考点

2.如果元素的外层元素没有设置任何position的值,那么该元素将寻找距离自己最近的其他设定过position的外层元素作为参照物(必须为嵌套层)

3.如果该元素的外层元素没有任何一个元素采用position定位,那么此时定位参考元素变为body或者说页面

 

z-index

设置定位元素z轴的距离(定位元素的显示顺序)

z-index属性只支持定位元素

 

display属性

根据CSS规范的规定,每一个网页元素都有一个display属性,用于确定该元素的类型,每一个元素都有默认的display属性值,比如div元素,它的默认display属性值为“block”,成为块元素,而span元素的默认display属性值为“inline”,称为“行内”元素

块元素与行元素是可以转换的,也就是说display的属性值可以由我们来改变

块状元素:具有宽高属性,并且独占一行

行内块元素:具有宽高属性,不会独占一行

行内元素:不具有宽高属性,不会独占一行

 

display常见的属性值:

none:隐藏对象

inline:指定对象为内联元素

block:指定对象为块元素

inline-block:指定对象为内联块元素

table-cell:指定对象作为表格单元格

flex:弹性盒

 

隐藏和显示元素:

visibility:

     visible:显示

     hidden:隐藏

display:

    none:隐藏

     block:块元素

注意:visibility和display:none区别:visbility的隐藏方式不仅隐藏了内容的显示,其占用的空间依旧占用,用dispaly:none的隐藏方式是彻底隐藏该元素的内容和位置

 

visibility和display:none,opacity:0(设置透明度)区别:

visibility:hidden和opacity:0会将元素隐藏,当时物理空间实际存在

display:none:隐藏元素,不保留物理空间

 

盒子模型:

盒子模型是css中一个重要的概念,理解了盒子模型才能有更好的排版,W3C组织建议吧网页上元素看成是一个个盒子。盒模型主要定义四个区域:内容(content)、内边距(padding)、边框(border)、外边框(margin)。可以拿手机盒来对比,手机=内容,内边距=盒子中的填充物,边框=盒子的厚度,外边距=两个手机盒之间的距离

通常我们设置的宽和高是content的宽高

W3C盒模型

盒模型由内容(content),填充(padding),边框(border),边界(margin)组成

 

外边距:

围绕在元素边框(border)周围的空白区域

  • 会在元素外创建额外的空白区域
  • 外边距是透明的 

语法:margin:value;

单边设置

  • margin-top/right/bottom/left:value;
  • value可取值为像素,%,auto,负值

margin设置元素外边距的宽度,它有这么几个特点:

  1. 块级元素的垂直相邻外边距会合并
  2. 行内元素实际上不占上下外边距。行内元素的左右外边距不合并
  3. 浮动元素的外边距也不会合并
  4. 允许指定负的外边距值,不过使用时要小心

 

border边框

border属性设置一个元素的边框,它有三个要素:宽、样式、颜色,统称“边框三要素”。

三要素书写的时候一般如下顺序

border:宽度 样式 颜色

border:1px solid red;

不过不按此顺序来写依然能正常显示。

div{border:red soild 2px}

 

border-style设置边框的样式,有五种常用样式可选:

点状dotted

实线soild

双线double(需要最起码设置为3要素,不然显示不下)

虚线dashed

无边框none

 

border的三要素可以统一写在“border”属性中,也可以单独设置。

统一的写法:border:1px solid red

单独设置的写法:

border-width:XXX;

border-style:XXX;

border-color:XXX;

要注意,在style属性为空的情况下,整个边框是不会出现的,这不论是统一写在border或是单独设置都是这样的。

不写width会有默认3像素的值

不写颜色会默认为黑色

 

内边距

  • 内容区域和边框之间的空间
  • 会扩大元素边框所占用的区域
  • 语法:padding:value;
  • 单边设置
    • padding-top/right/bottom/left:value;
    • value可取值为像素,百分比,但不能为负数

内边距的简写

  • padding:value(四个方向相同);
  • padding:value(上下)value(左右)
  • padding:value(上)value(左右)value(下)
  • padding:value(上)value(右)value(下)value(左)

怪异盒模型:

盒子模型分两种,一种是符合W3C规范的标准例子模型,另一种是IE的盒子模型,IE的盒子模型也叫怪异盒子

可以看到IE盒子模型也包括margin、border、padding、content,不过,和标准盒子模型不同的是:IE盒子模型的宽,包含了border和pading。

标准盒模型:padding的宽高要记录在盒子模型的宽高之内,于此相同的是border也要记录在盒子模型的宽高之内,但是margin并不算在宽高之内,所以各位在书写宽高时要注意减掉内边距和边框

Box-sizing

 box-sizing属性允许你以“W3C的盒模型”或“IE盒模型”来定义元素,以适应区域。换句话说,当前元素使用哪种盒模型,可以由box-sizing属性来指定

它有两个值

content-box(标准)

  padding和border不被包含在width和height内,元素的实际大小为宽高+border+padding,此为标准模式下的盒模型

border-box(怪异)

  padding和border被包含在定义的width和height中,元素实际的大小为你定义了多宽就是多宽。此属性为怪异模式下的盒模型

 

实例

注意事项:

  1. 对于网页进行分析,划分方块
  2. 选择器的优先级及精确定位需要设置样式的标签
  3. 浮动属性对于其他元素的影响
  4. 使用定位属性时,精确找到定位参考点
  5. 设计时先水平,在垂直
  6. 注释要先行

流程:

1.首先用div构建界面的整体布局(方块),分析好各个div中有多少个div

 

2.通过CSS修改样式,通过div标签

3.链接到图片和文字,整体优化

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值