第三章总结

3.页面布局

3.1盒子模型

模型结构

模型元素

3.2块级元素与行内块元素

3.2.1块级元素

wxml代码:

<view style="border: 1px solid #f00;">块级元素1</view>
<view style="border: 1px solid #0f0;margin: 15px;padding: 20px;">块级元素2</view>
<view style="border: 1px solid #00f;width: 200px;height: 80px;">块级元素3</view>
<view style="border: 1px solid #ccc;">
  <view style="height: 60px;">块级元素4</view>
  </view>
  <view style="border: 1px solid #f00;width: 100px;background-color: #ccc;">
  父级元素高度随内容决定,内容为文本</view>

结果

3.2.2行内元素

wxml代码

  <view style="padding: 20px">
  <text style="border: 1px solid #f00;">行内元素1</text>
  <text style="border: 1px solid #0f0;margin: 10px;padding: 5px">行内元素2</text>
  <text style="border: 1px solid #00f;display: inline;">块级元素设置为行内元素</text>一行显示不全,自动换行显示
  </view>

结果

3.2.3行内块元素

wxml代码

  <view>
  元素显示方式的<view style="display:inline-block;border: 1px solid #f00;margin: 10px;padding: 10px; width: 200px">块级元素、行内元素和行内块元素</view>三种类型。
  </view>

结果

3.3浮动与定位

3.3.1元素浮动与清除

1.浮动格式:

{float:none|left|right;}

wxml代码

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

结果

2.清除格式:

{clear:left|right|both|none}

wxml代码

<view>box1 box2 左浮动 box3 清除左浮动</view>
<view style="border: 1px solid #f00;padding: 5px;">
  <view style="float: left;border: 1px solid #0f0">box1</view>
  <view style="float: left;border: 1px solid #0f0">box2</view>
  <view style="clear: left;border: 1px solid #0f0">box3</view>
</view>
<view>box1 box2 box3 左浮动 在父元素后添加一个空元素</view>
<view style="border: 1px solid #f00;padding: 5px;"clear="clear-float">
  <view style="float: left;border: 1px solid #0f0">box1</view>
  <view style="float: left;border: 1px solid #0f0">box2</view>
  <view style="float: left;border: 1px solid #0f0">box3</view>
</view>

结果

3.3.2元素定位

格式:

{position:static|relative|absolute|fixed}

wxml代码

<!--三个元素未定位-->
<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>
<!--box2绝对定位-->
<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>
<!--box2相对定位-->
<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>
<!--box2固定定位-->
<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>

结果

3.4flex布局

3.4.1容器属性

1.display

.box{display:flex|inline-flex;}

2.flex-direction

.box{flex-direction:row|row-reverse|column-reverse;}

3.flex-wrap

.box{flex-wrap:nowwrap|wrap|wrap-reverse;}

4.flex-flow

.box{flex-flow:<flex-direction>||<flex-wrap>;}

5.justify-content

.box{justify-content:flex-start|flex-end|center|space-between|space-around;}

6.align-items

.box{align-items:flex-start|flex-end|center|baseline|stretch;}

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;
}

结果

7.align-content

.box{align-content:flex-start|flex-end|center|space-between|space-around|stretch}

3.4.2项目属性

1.order

.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>

2.flex-grow

.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="order:3" style="flex-grow:1">2</view>
    <view class="item" style="order:2" style="flex-grow:2">3</view>
    <view class="item">4</view>
</view>

3.flex-shrink

.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="order:3" style="flex-shrink:2">2</view>
    <view class="item" style="order:2" style="flex-shrink:1">3</view>
    <view class="item" style="order:2" style="flex-shrink:4">4</view>
</view>

4.flex-basis

.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="order:3" style="flex-basis:100px">2</view>
    <view class="item" style="order:2" style="flex-basis:200px">3</view>
    <view class="item">4</view>
</view>

5.flex

语法格式:


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

6.align-self

语法格式:

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

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值