使用html5+css来自适应布局下图

html-css06

使用html5+css来自适应布局下图,第1张

先给你写一套代码,之后再来解释哈。

css部分:

.aa {

    display: flex //使用flex布局,可以轻易获得水平布局

    align-items: center //垂直方向居中

    justify-content: center //水平方向居中

    height: 200px

    border: 1px solid #000

}

.aa1, .aa2, .aa3 {

    flex: 1

    padding: 2px

    height: 100px

}

.aa1 div, .aa2 div, .aa3 div {

    width: 80%

    height: 100px

}

.aa1 div {

    background-color: red

}

.aa2 div {

    background-color: green

}

.aa3 div {

    background-color: blue

}

html部分:

  <div class="aa">  //flex的容器外框

    <div class="aa1"><div style="width: 100%">内容1</div></div>

    <div class="aa2"><div style="width: 100%">内容2</div></div>

    <div class="aa3"><div style="width: 100%">内容3</div></div>

  </div>

效果如图:

垂直和水平居中都是相对于外框来说的,即本例的aa来说的。flex=1即为在水平方向是等分布局的。在你给的安例中,直接循环aa就可以。如果对flex不懂,可以去学习一下,推荐扩展链接:网页链接

1)像<span>这样的行内标记,定义它的margin-top和margin-bottom是无效的,除非你把它设置为块状元素才可以。Display:block

2)对于块状元素,你可以自由的使用外边距来定义版式和元素之间的距离。类似 DIV 等等,

3)无论什么元素,一旦设置为是浮动显示,就拥有了完整的盒模型结构,我们就可以使用外边距,内边距,边框,高和宽来控制的大小以及与其他对象之间的位置关系。

4)浮动是从网页布局的角度来定义元素的显示,而行内和块状属性主要是从元素自身的性质来定其显示的。

5)当元素没有定义边框时,可以把内边距作为外边距使用。有时候外边距会有重叠现象的。

6)当为元素定义背景图像时,内边距区域内可以显示背景图像,而对外边距区域来说,背景图像是达不到的,他永远都是透明状态

7)用div+css设计网页结构时,设计师满脑子都是网页内容,而非内容所呈现的效果。

8)块状元素:不管块状元素宽度是多少,他总会自动占据一行,因为在他末尾附加了一个换行符,而行内元素没有这个特点。块状元素有完整的盒模型结构,可以定义宽度和高度,而行内元素没有这个特性,无法通过高度来改变文本行的行高。

块元素的代表标记 div

行内元素的代表标记 span ,行内标记不具备组织结构框架

9)网页布局分为:自然布局,浮动布局, 定位布局

10)当一个元素被定义为浮动显示时,即定义为块状元素。并且该元素就会收缩自身体积为最小状态。所以,应该有个好的习惯即把浮动元素设置高和宽。如果没有设置,则元素会按照它所包含的内容大小来确定它的大小。

11)当元素浮动后,周边的对象会自动环绕浮动元素周围,形成一种环绕关系。

12)块状元素之间的外边距会有重叠现象,但是浮动元素之间的外边距不会发声重叠现象。

13)浮动元素移动,上移:margin-top:-**下移:margin-botom:-*px,其他以此类推。

14)一般定位元素(绝对或是相对元素)都会覆盖在文档流对象之上。但是,select元素的窗口控件还不完全支持z-index

15)在css定位布局中,一般遵循“外部相对定位,内部绝对定位”

16)在body中设置min-width:760px,可以避免布局重叠现象。