国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

微信小程序的浮動與定位,flex布局

這篇具有很好參考價(jià)值的文章主要介紹了微信小程序的浮動與定位,flex布局。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1.元素浮動與清除

元素浮動就是指設(shè)置了浮動屬性的元素會脫離標(biāo)準(zhǔn)文檔流的控制 , 移到其父元素中指定位置的過程。 在css 中 , 通過float屬性來定義浮動 , 其基本格式如下 :
  { float : none |left |right ;}
(1)其中 , none ——— 默認(rèn)值 , 表示元素不浮動 ;
(2)left ——— 元素向左浮動 ;
(3right ——— 元素向右浮動。
? 由于浮動元素不再占用原文檔流的位置 , 因此它會對頁面中其他元素的排列產(chǎn)生影響。

示例代碼:

<view>box1,box2,box3</view>
<view style="border: 1px solid #f00;padding: 5px;">
  <view style="border: 1px solid #f00;padding: 5px;">box1

</view>
<view style="border: 1px solid #f00;padding: 5px;">box2

</view>
<view style="border: 1px solid #f00;padding: 5px;">box3

</view>

</view>
<view>box1 左浮動</view>
<view style="border: 1px solid #f00;padding: 5px;">
  <view style="float: left; border: 1px solid #f00;padding: 5px;">box1

</view>
<view style="border: 1px solid #f00;padding: 5px;">box2

</view>
<view style="border: 1px solid #f00;padding: 5px;">box3

</view>
</view>
<view>box1,box2左浮動</view>
<view style="border: 1px solid #f00;padding: 5px;">
  <view style="float :left ;border:1px solid #0f0 ">
</view>
<view style="float :left ;border:1px solid #0f0">
</view>
<view style="float :left ;border:1px solid #0f0">
</view>
<view style="float :left ;border:1px solid #0f0">
</view>
</view>

運(yùn)行結(jié)果圖:

?float小程序,微信小程序,notepad++,小程序

在CSS 中 , clear 屬性用于清除浮動元素對其他元素的影響 , 其基本格式如下 :
其中 , left ——— 清除左邊浮動的影響 , 也就是不允許左側(cè)有浮動元素 ;
right ——— 清除右邊浮動的影響 , 也就是不允許右側(cè)有浮動元素 ;
both ——— 同時(shí)清除左右兩側(cè)浮動的影響 ;
none ——— 不清除浮動。

?代碼如下:

<view>box1,box2左浮動 box3清除左浮動</view>
<view>
<view style="border: 1px solid #f00;"></view>
<view style="border:  1px solid #f00;padding: 5px;"></view>
<view style="float: left;border: 1px solid #f0f;">box1</view>
<view style="float: left;border: 1px solid #f0f;">box2</view>
<view style="clear: left;border: 1px solid #f0f;">box2</view>

</view>

結(jié)果如圖:

?float小程序,微信小程序,notepad++,小程序

2.元素定位?

. . 2 元素定位
浮動布局雖然靈活 , 但無法對元素的位置進(jìn)行精確的控制。 在css中 , 通過postion?屬性可以實(shí)現(xiàn)對頁面元素的精確定位。 基本格式如下 :
{position :static |relative|absolute|fixed}
(1)其中 , static ——— 默認(rèn)值 , 該元素按照標(biāo)準(zhǔn)流進(jìn)行布局 ;
(2)relative ——— 相對定位 , 相對于它在原文檔流的位置進(jìn)行定位 , 它后面的盒子仍以標(biāo)準(zhǔn)流方式對待它 ;
(3)absolute ——— 絕對定位 , 相對于其上一個(gè)已經(jīng)定位的父元素進(jìn)行定位 , 絕對定位的盒子從標(biāo)準(zhǔn)流中脫離 , 它對其后的兄弟盒子的定位沒有影響 ;
(4)fixed ——— 固定定位 , 相對于瀏覽器窗口進(jìn)行定位。
代碼示例如下:
(1)不動的情況下:
<view style="border: 1px solid #0f0;width: 100px ;height: 100px;">box1 </view>
<view style="border: 1px solid #0f0;width: 100px ;height: 100px;">box2 </view>
<view style="border: 1px solid #0f0;width: 100px ;height: 100px;">box3 </view>

結(jié)果圖:

?float小程序,微信小程序,notepad++,小程序

(2)進(jìn)行絕對定位

代碼如下:

<view style="border: 1px solid #0f0;width: 100px ;height: 100px;">box1 </view>
<view style="border: 1px solid #0f0;width: 100px ;height: 100px;position: absolute;left: 30px;top: 30px;">box2 </view>
<view style="border: 1px solid #0f0;width: 100px ;height: 100px;">box3 </view>

結(jié)果圖:

?float小程序,微信小程序,notepad++,小程序

(3)進(jìn)行相對定位:?

代碼:

<view style="border: 1px solid #0f0;width: 100px ;height: 100px;">box1 </view>
<view style="border: 1px solid #0f0;width: 100px ;height: 100px;position: relative;left: 30px;top: 30px;">box2 </view>
<view style="border: 1px solid #0f0;width: 100px ;height: 100px;">box3 </view>

結(jié)果如圖:?

float小程序,微信小程序,notepad++,小程序

?(4)進(jìn)行固定定位

代碼如下:

<view style="border: 1px solid #0f0;width: 100px ;height: 100px;">box1 </view>
<view style="border: 1px solid #0f0;width: 100px ;height: 100px;position: fixed;left: 30px;top: 30px;">box2 </view>
<view style="border: 1px solid #0f0;width: 100px ;height: 100px;">box3 </view>

結(jié)果如圖:

?float小程序,微信小程序,notepad++,小程序

3,flex布局?

容器默認(rèn)存在兩根軸 : 水平的主軸 ? 和垂直的交叉軸 。 主軸的開始位置 ( 與邊框的交叉點(diǎn) ) 叫做mainstart , 結(jié)束位置叫做mainend ; 交叉軸的開始位置叫做cross start , 結(jié)束位置叫做corssend
項(xiàng)目默認(rèn)沿主軸排列。 單個(gè)項(xiàng)目占據(jù)的主軸空間叫做mainsize , 占據(jù)的交叉軸空間叫做cross size
設(shè)置display 屬性可以將一個(gè)元素指定為flex 布局 , 設(shè)置flex - direction 屬性可以指定主軸方向。 主軸既可以是水平方向 , 也可以是垂直方向。
flex布局模型:
float小程序,微信小程序,notepad++,小程序

(1)容器屬性?

flex容器支持的屬性有7種,如圖:

float小程序,微信小程序,notepad++,小程序

 
. display
display 用來指定元素是否為flex 布局 , 語法格式為 :
其中 , flex ——— 塊級flex 布局 , 該元素變?yōu)閺椥院凶?/strong> ;
inline - flex ——— 行內(nèi)flex 布局 , 行內(nèi)容器符合行內(nèi)元素的特征 , 同時(shí)在容器內(nèi)又符合flex 布局規(guī)范。
設(shè)置了flex 布局之后 , 子元素的float、clear 和verticalalgin 屬性將失效。
. flex - direction
flex - direction 用于設(shè)置主軸的方向 , 即項(xiàng)目排列的方向 , 語法格式為 :
.box{flex-direction:row|row-reverse|column|column-reverse}
其中 , row ——— 主軸為水平方向 , 起點(diǎn)在左端 , 當(dāng)元素設(shè)置為flex 布局時(shí) , 主軸默認(rèn)為row ;
row-reverse ——— 主軸為水平方向 , 起點(diǎn)在右端 ;
column——— 主軸為垂直方向 , 起點(diǎn)在頂端 ;
column-reverse ——— 主軸為垂直方向 , 起點(diǎn)在底端。

3.flex-wrap
flex-wrap 用來指定當(dāng)項(xiàng)目在一根軸線的排列位置不夠時(shí), 項(xiàng)目是否換行,

其語法格式如下:

.box{flex-wrap:nowrap|wrap|wrap-reverse;}
其中, nowrap———不換行, 默認(rèn)值;

wrap———換行, 第一行在上方;

wrap-reverse———換行, 第一行在下方。

? ? ?當(dāng)設(shè)置換行時(shí), 還需要設(shè)置align -item屬性來配合自動換行, 但align-item 的值不能為“seretch”。

flex-wrap 不同值的顯示效果如圖所示。

float小程序,微信小程序,notepad++,小程序

4.flex-flow

flex-flow是flex-direction 和flex-wrap 的簡寫形式, 默認(rèn)值為rownowrap。 語法格式如下:

.box{flex-flow:<flex-direction>||<flex-wrap>;}
.box{flex-flow:row nowrap;}//水平方向不換行
.box{flex-flow:row-reverse wrap;}//水平方向逆方向換行
.box{flex-flow:column wrap-reverse;}//垂直方向逆方向換行

5.justify-content
justify-content用于定義項(xiàng)目在主軸上的對齊方式。語法格式如下:

.box{justify-content:flex-start|flex-end|center|space-between|space-around;}
justift-content———與主軸方向有關(guān), 默認(rèn)主軸水平對齊, 方向從左到右;

flex-strat———左對齊, 默認(rèn)值;

flex-end———右對齊;

center———居中;

space-between———兩端對齊, 項(xiàng)目之間的間隔都相等;

space-around———每個(gè)項(xiàng)目兩側(cè)的間隔相等。

顯示效果如下:

float小程序,微信小程序,notepad++,小程序

6.align-items
align-items用于指定項(xiàng)目在交叉軸上的對齊方式,其語法格式如下:

.box{align-items:flex-start|flex-end|center|baseline|stretch;}
align-items———與交叉軸方向有關(guān), 默認(rèn)交叉由上到下;

flex-start———交叉軸起點(diǎn)對齊;

flex-end———交叉軸終點(diǎn)對齊;

center———交叉軸中線對齊;

baseline———項(xiàng)目根據(jù)它們第一行文字的基線對齊;

stretch———如果項(xiàng)目未設(shè)置高度或設(shè)置為auto, 項(xiàng)目將在交叉軸方向拉伸填充容器, 此為默認(rèn)值。

代碼如下:

//wxml
<view class="cont1">
<view class="item">1</view>
<view class="item item2">2</view>
<view class="item item3">3</view>
<view class="item item4">4</view>
</view>
 
 
//wxss
.cont1{
  display: flex;
  flex-direction: row;
  align-items: baseline;
}
.item{
  background-color: #ccc;
  border: 1px solid #f00;
  height: 100px;
  width: 50px;
  margin: 2px;
}
.item2{
  height: 80px;
}
.item3{
  display: flex;
  height: 50px;
  align-items: flex-end;
}
.item4{
  height: 120px;
}

代碼結(jié)果圖:

float小程序,微信小程序,notepad++,小程序

7.align-content
align-content用來定義項(xiàng)目有多根軸線(出現(xiàn)換行后)在交叉軸上的對齊方式,如果只有一根軸線,該屬性不起作用。語法格式如下:

.box{align-content:flexx-start|flex-end|center|space-between|space-around|stretch}
space-between———與交叉軸兩端對齊, 軸線之間的間隔平均分布;

space-around———每根軸線兩側(cè)的間隔都相等, 軸線之間的間隔比軸線與邊框間隔大一倍。

其余各屬性值的含義與align - items 屬性的含義相同。如圖所示:

float小程序,微信小程序,notepad++,小程序

(2) 項(xiàng)目屬性

功能表如下所示:

float小程序,微信小程序,notepad++,小程序

1.order

order屬性定義項(xiàng)目的排列順序, 數(shù)值越小, 排列越靠前, 默認(rèn)值為0。 語法格式如下:

.item{order:<number>;}

舉例代碼如下:

<view class="cont1">
  <view class="item">1</view>
  <view class="item">2</view>
  <view class="item">3</view>
  <view class="item">4</view>
</view>
<view class="cont1">
  <view class="item" style="order:1">1</view>
  <view class="item" style="order:3">2</view>
  <view class="item" style="order:2">3</view>
  <view class="item">4</view>
</view>

?float小程序,微信小程序,notepad++,小程序

2.flex-grow

flex-grow定義項(xiàng)目的放大比例,默認(rèn)值為0,即不放大。語法格式如下:

.item{flex-grow:<number>;}

代碼如下:?

<view class="cont1">
  <view class="item">1</view>
  <view class="item">2</view>
  <view class="item">3</view>
  <view class="item">4</view>
</view>
<view class="cont1">
  <view class="item">1</view>
  <view class="item" style="flex-grow: 1;">2</view>
  <view class="item" style="flex-grow: 2;">3</view>
  <view class="item">4</view>
</view>

結(jié)果如圖:

?float小程序,微信小程序,notepad++,小程序

3.flex-shrink

flex-shrink用來定義項(xiàng)目的縮小比例,默認(rèn)值為1,如果空間不足,該項(xiàng)目將被縮小。

語法格式如下:

.item{flex-shrink:<number>;}

舉例代碼:?

<view class="cont1">
  <view class="item">1</view>
  <view class="item">2</view>
  <view class="item">3</view>
  <view class="item">4</view>
</view>
<view class="cont1">
  <view class="item">1</view>
  <view class="item" style="flex-shrink: 2">2</view>
  <view class="item" style="flex-shrink: 1">3</view>
  <view class="item" style="flex-shrink: 4">4</view>
</view>

結(jié)果圖如下:

float小程序,微信小程序,notepad++,小程序

4.flex-basis

flex-basis屬性用來定義伸縮項(xiàng)目的基準(zhǔn)值,剩余的空間將按比例進(jìn)行縮放,它的默認(rèn)值為auto(即項(xiàng)目的本來大?。?。

語法格式如下:

.item{flex-basis:<number>|auto;}

舉例代碼:

<view class="cont1">
  <view class="item">1</view>
  <view class="item">2</view>
  <view class="item">3</view>
  <view class="item">4</view>
</view>
<view class="cont1">
  <view class="item">1</view>
  <view class="item" style="flex-basis:100px;">2</view>
  <view class="item" style="flex-basis: 200px;">3</view>
  <view class="item">4</view>
</view>

效果圖:?

?float小程序,微信小程序,notepad++,小程序

5.flex
flex屬性是flex-grow、flex-shrink和flex-basis的簡寫,其默認(rèn)值分別為0、1、auto。

語法格式如下:

.item{flex:<flex-grow>|<flex-shrink>|<flex-basis>;}


示例代碼如下:

.item{flex:auto;}//等價(jià)于.item{flex:1 1 auto;}
.item{flex:none;}//等價(jià)于.item{flex:0 0 aoto;}

?

6.algin-self

align-self屬性用來指定單獨(dú)的伸縮項(xiàng)目在交叉軸上的對齊方式。該屬性會重寫默認(rèn)的對齊方式。語法格式如下:文章來源地址http://www.zghlxwxcb.cn/news/detail-854003.html

.item{align-self:auto|flex-start|flex-end|center|baseline|stretch;}

到了這里,關(guān)于微信小程序的浮動與定位,flex布局的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 微信小程序-flex布局:垂直、水平方向-自動填充滿剩余空間

    微信小程序-flex布局:垂直、水平方向-自動填充滿剩余空間

    在微信小程序項(xiàng)目中經(jīng)常需要將水平或垂直方向分成兩大部分,一部分內(nèi)容寬度或高度固定,剩余的一部分需填充滿剩余空間。那么,該怎么快速解決這類布局? 效果圖如下: 垂直方向 : 水平方向: 我個(gè)人比較喜歡使用flex布局,面對此類布局,最先想到的也是flex布局。常

    2024年02月09日
    瀏覽(19)
  • Flex布局簡介及微信小程序視圖層View詳解

    Flex布局簡介及微信小程序視圖層View詳解

    目錄 一、Flex布局簡介 什么是flex布局? flex屬性 基本語法和常用屬性 Flex 布局技巧 二、視圖層View? View簡介 微信小程序View視圖層 WXML 數(shù)據(jù)綁定 列表渲染 條件渲染 模板 WXSS 樣式導(dǎo)入 內(nèi)聯(lián)樣式 選擇器 全局樣式與局部樣式 WXS 示例 注意事項(xiàng) 頁面渲染 數(shù)據(jù)處理 Flex 布局(又稱

    2024年02月20日
    瀏覽(22)
  • 微信小程序進(jìn)階——Flex彈性布局&輪播圖&會議OA項(xiàng)目(首頁)

    微信小程序進(jìn)階——Flex彈性布局&輪播圖&會議OA項(xiàng)目(首頁)

    目錄 一、Flex彈性布局 1.1 什么是Flex彈性布局 1.1.1 詳解 1.1.2 圖解? 1.1.3 代碼演示效果 1.2 Flex彈性布局的核心概念 1.3?Flex 彈性布局的常見屬性 1.4 Flex彈性布局部分屬性詳解 1.4.1?flex-direction屬性 1.4.2?flex-wrap屬性 1.4.3?flex-flow屬性 1.4.4?justify-content屬性 1.4.5?align-items屬性 1.4.6?

    2024年02月05日
    瀏覽(30)
  • 使用flex彈性布局來為微信小程序?qū)懽赃m應(yīng)頁面

    使用flex彈性布局來為微信小程序?qū)懽赃m應(yīng)頁面

    我們知道,寫習(xí)慣了前端的人,一般切圖后布局頁面的話,上手最習(xí)慣的是基于盒子模型的浮動布局,依賴 display 屬性 + position屬性 + float屬性,但是浮動布局有一些致命的小問題,比如垂直居中比較費(fèi)勁,比如著名的float坍塌問題,另外有些極端情況下,還得使用模型+clear

    2024年02月09日
    瀏覽(26)
  • 微信小程序入門與實(shí)戰(zhàn)之rpx響應(yīng)式單位與flex布局

    微信小程序入門與實(shí)戰(zhàn)之rpx響應(yīng)式單位與flex布局

    小程序包含一個(gè)描述整體程序的 app 和多個(gè)描述各自頁面的 page。 一個(gè)小程序主體部分由三個(gè)文件組成,必須放在項(xiàng)目的根目錄,如下: app.json必須有一個(gè)pages數(shù)組: 一個(gè)小程序頁面由四個(gè)文件組成,分別是: 注意:為了方便開發(fā)者減少配置項(xiàng),描述頁面的四個(gè)文件必須具有

    2024年02月03日
    瀏覽(38)
  • 微信小程序警告設(shè)置 enable-flex 屬性以使 flexbox 布局生效

    微信小程序警告設(shè)置 enable-flex 屬性以使 flexbox 布局生效

    頁面使用了scroll-view,對應(yīng)的wxss使用了flex布局,也就是scroll-view設(shè)置了display:flex; 會發(fā)現(xiàn)flex不生效,并且這個(gè)時(shí)候微信小程序會警告[pages/XXX/XXX] 設(shè)置 enable-flex 屬性以使 flexbox 布局生效。 ? 代碼如下: 添加上這個(gè)屬性之后,就可以了。

    2024年02月12日
    瀏覽(23)
  • 微信小程序23__flex布局 相關(guān)的3種居中: 水平居中_垂直居中_水平垂直居中

    類似這樣寫法 display: ?flex; flex-direction: ?column; ? ? ? ?????????//垂直布局 align-items: ?center; ? ? ? ? ? ? ? ? ? ?// 水平居中? ?? justify-content: ?space-around; //垂直方向分散布局 類似這樣寫法 display: ?flex; flex-direction: row; ? ? ? ? ?//水平布局 ? ? ? align-items: center; ? ?

    2024年02月03日
    瀏覽(21)
  • float,flex和grid布局

    float,flex和grid布局

    頁面布局往往會影響著整體的結(jié)構(gòu)與項(xiàng)目的樣式,通常我們用的布局方式有三種:float,flex,grid 1.1概念 ?????首先對于一個(gè)頁面來說,有浮動流,文檔流,文本流這幾種模式,而float布局則是脫離文檔流而不脫離文本流,就是頁面的元素會無視這個(gè)浮動的元素,正常布局的正

    2023年04月23日
    瀏覽(18)
  • 【微信小程序】6天精準(zhǔn)入門(第3天:小程序flex布局、輪播圖組件及mock運(yùn)用以及綜合案例)附源碼

    【微信小程序】6天精準(zhǔn)入門(第3天:小程序flex布局、輪播圖組件及mock運(yùn)用以及綜合案例)附源碼

    布局的傳統(tǒng)解決方案,基于[盒狀模型],依賴display屬性 +?position屬性 +?float屬性 Flex是 Flexible Box 的縮寫,意為” 彈性布局 ”,用來為盒狀模型提供最大的靈活性。 任何一個(gè)容器都可以指定為Flex布局。 display: ‘flex’ ????????容器默認(rèn)存在兩根軸: 水平的主軸(main axi

    2024年02月08日
    瀏覽(29)
  • uni-app/微信小程序:scroll-view縱向滾動高度自適應(yīng)flex布局填充剩余高度

    uni-app文檔:https://uniapp.dcloud.net.cn/component/scroll-view.html 使用豎向滾動時(shí),需要給 一個(gè)固定高度,通過 css 設(shè)置 height 微信文檔:https://developers.weixin.qq.com/miniprogram/dev/component/scroll-view.html 使用豎向滾動時(shí),需要給scroll-view一個(gè)固定高度,通過 WXSS 設(shè)置 height 所以,給scroll-view設(shè)置

    2024年02月09日
    瀏覽(90)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包