CSS经典布局之弹性布局_html/css_WEB-ITnose
当我们在浏览浏览器的时候,常常会放大/缩小浏览器的显示比例,或者在不同的设备上,所处的分辨率也不尽相同。因此,我们需要学习一个新的知识:弹性盒模型。
弹性盒模型
实现项目对齐,方向,排序(即使项目大小位置动态生成),能够动态修改子元素的宽度和高度,具有良好的适配性。
如图就是弹性布局一个大概范围。
弹性容器属性
属性 | 说明 |
flex-direction | 设置主轴方向,确定弹性子元素排列方式 |
flex-wrap | 当弹性子元素超出弹性容器范围是是否换行 |
flex-flow | 复合属性,flex-direction和flex-wrap双重属性 |
justify-content | 主轴上的对齐方式 |
align-items | 侧轴上的对齐方式 |
align-content | 侧轴上有空白,侧轴对齐方式 |
下面我们用弹性布局的方式实现响应式菜单,先来看代码:
<meta charset="UTF-8"> <title>Flexbox响应式菜单</title> <link rel="stylesheet" type="text/css" href="mycss.css">
登入後複製
.menu{ list-style-type: none; padding: 0; margin: 0; display: -webkit-flex; display: -ms-flexbox; /*display: flex; //激活flex方式 flex-flow: row wrap; //弹性容器的属性*/}.menu li{ width: auto; height: 40px; text-align: center; line-height: 40px; flex: 1 1 100%; //扩展比例为1,收缩比例为1,初始宽度为100%}.menu li:nth-child(1){ background-color: pink;}.menu li:nth-child(2){ background-color: plum;}.menu li:nth-child(3){ background-color: hotpink;}.menu li:nth-child(4){ background-color: palevioletred;}.menu li:nth-child(5){ background-color: deeppink;}.menu li:nth-child(6){ background-color: purple;}.menu li a{ color: black; text-decoration: none;}@media (max-width: 480px) { .menu { flex: 1 1 100%; flex-flow: row wrap; }}@media (min-width: 768px){ .menu { flex-flow: row nowrap; }}
登入後複製
以上我们就实现了一个弹性布局的一个大概模型。
再说一个我之前看到过的一面试题,也是要求写一道弹性布局的题,但是我们也可以另辟蹊径:
实现如下图所示的布局要求:sidebar固定宽度200px,content和header宽度自适应,当window宽度小于600px时,变成三列布局
我们实现的思路也跟弹性布局是一样的,看代码:
<meta charset="UTF-8"> <title>flex布局</title> <style> *{ margin: 0; padding: 0; } @media (min-width: 600px) { .header { width: auto; background-color: green; } .sidebar { float: left; width: 200px; margin-right: -200px; background-color: gold; } .content { float: left; width: 100%; margin-left: 200px; background-color: red; } } @media (max-width: 600px) { .header { width: auto; background-color: green; } .sidebar { width: auto; background-color: gold; } .content { width: auto; background-color: red; } } </style><div class="header">header</div><div class="sidebar">sidebar</div><div class="content">content</div>
登入後複製
版权声明:本文为博主原创文章,未经博主允许不得转载。
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前
By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
擊敗分裂小說需要多長時間?
3 週前
By DDD
R.E.P.O.保存文件位置:在哪里以及如何保護它?
3 週前
By DDD

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

我如何使用html5&lt; time&gt; 元素以語義表示日期和時間?
