摘要:概述在移端的兼容并不是很好但是在移動端的支持卻是很好而且布局對移動端布局來說簡直就是福音但是沒有經過整和處理用布局也算是艱難所以打算搭建一套基于的移動端布局工具來學習容器類容器工具類這是對和屬性的封裝將一個元素變成橫向的容器將一個元素變成
0x001 概述
flex在移pc端的兼容并不是很好,但是在移動端的支持卻是很好,而且flex布局對移動端布局來說簡直就是福音.但是沒有經過整和處理,用flex布局也算是艱難,所以打算搭建一套基于flex的移動端布局工具,來學習css,sass,flex.0x002 容器類
容器工具類
這是對flex和flex-direction屬性的封裝
row:將一個元素變成橫向的flex容器
col:將一個元素變成縱向的flex容器
// 主軸居中,交軸居中,將寬度變為100%,主軸居中對齊,交軸居中對齊 .flex { display: flex; justify-content: center; align-items: center; width: 100%; } // 橫向 .row { @extend .flex; flex-direction: row; } // 縱向 .col { @extend .flex; flex-direction: column; height: 100%; }
示例代碼結構(去除樣式屬性,保留結構屬性,以下示例代碼一樣): ```rowrowrowcolcolcol
``` 效果: ![clipboard.png](/img/bVKslx)
內容對齊工具
這是對justify-content的封裝
content-start:子元素main start對齊
content-end:子元素相對main end對齊
content-between:子元素相對兩端無間距對齊
content-around:子元素相對兩端同間距對齊
.content-start { justify-content: flex-start; } .content-end { justify-content: flex-end; } .content-between { justify-content: space-between; } .content-around { justify-content: space-around; }
示例代碼結構 ``` //橫向對齊rowrowrowrowrowrowrowrowrow//縱向對齊rowrowrowrowrowrowrowrowrowrowrowrow``` 效果: 橫向對齊效果 ![clipboard.png](/img/bVKslS) 縱向對齊效果 ![clipboard.png](/img/bVKsmm)rowrowrow
子元素相對交軸對齊工具
這是對align-items的封裝
cross-start:子元素相對交軸cross start 對齊
cross-end:子元素相對交軸cross end對齊
cross-stretch:子元素相對交軸拉伸對齊
代碼 ``` .cross-start { align-items: flex-start; } .cross-end { align-items: flex-end; } .cross-stretch { align-items: stretch; } ``` 示例代碼 ```0x003 子元素工具cell-startcell-startcell-startcell-endcell-endcell-endcell-stretchcell-stretchcell-stretchcell-startcell-startcell-startcell-startcell-endcell-endcell-endcell-end``` 效果 ![clipboard.png](/img/bVKspG)cell-stretchcell-stretchcell-stretchcell-stretch
比例工具
這是對flex-grow的封裝
cell-1:比例1
cell-2:比例2
cell-3:比例3
cell-4:比例4
cell-5:比例5
cell-full:墊片,使子元素寬度占據100%,主要用于col的子元素
@for $i from 1 through 5 { .cell-#{$i} { flex-grow: $i; text-align: center; } } .cell-full{ width: 100%; }
示例代碼 ```cell-1cell-1cell-1cell-1cell-5cell-1cell-1cell-2cell-3``` 效果圖cell-1cell-1cell-1cell-1cell-2cell-3colcell-1
2.子元素對齊工具
這是對`align-items`的封裝 - `cell-start`: - `cell-end` - `cell-stretch` 代碼: ``` .cell-start { align-items: flex-start; } .cell-end { align-items: flex-end; } .cell-stretch { align-items: stretch; } ``` 示例代碼 ```self-startdefaultself-endself-stretch``` 效果self-startdefaultself-endself-stretch
3.滾動
這是對`overflow`的封裝 - `cell-scroll-x` - `cell-scroll-y` 代碼: ``` .cell-scroll-y { height: 100%; overflow-y: auto; } .cell-scroll-x { width: 100%; overflow-x: auto; white-space: nowrap; } ``` 示例代碼 ```0x004 頁面實戰橫向滾動橫向滾動橫向滾動橫向滾動橫向滾動橫向滾動橫向滾動橫向滾動橫向滾動橫向滾動橫向滾動橫向滾動橫向滾動``` 效果12...1314
登錄頁面
示例代碼(省略樣式,只保留結構):
登錄
效果:
個人中心
示例代碼(省略樣式,只保留結構):
十里桃花不如睡你
我的收藏我的喜好我的文章關于
效果:
主頁
示例代碼
主頁
文章標題
文章簡介
................主頁推薦我的
效果:
文章詳情
示例代碼結構
返回文章詳情評論相忘于江湖
十里桃花不如睡你
2017-03-09
...
效果
0x005 源碼github地址
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/116586.html
摘要:概述說起關于的文章。我覺得啊除了阮一峰老師,再也無人能出其右了,所以這里也只是聊做記錄。瀏覽器根據這個屬性,計算主軸是否有多余空間。它的默認值為,即項目的本來大小。 0x001 概述 說起關于flex的文章。我覺得啊除了阮一峰老師,再也無人能出其右了,所以這里也只是聊做記錄。 0x002 基本概念 showImg(https://segmentfault.com/img/bVKrjG...
閱讀 1082·2021-09-22 15:19
閱讀 1696·2021-08-23 09:46
閱讀 2226·2021-08-09 13:47
閱讀 1404·2019-08-30 15:55
閱讀 1407·2019-08-30 15:55
閱讀 1974·2019-08-30 15:54
閱讀 2795·2019-08-30 15:53
閱讀 712·2019-08-30 11:03