小程序:弹性布局案例

来自CloudWiki
Cloud17讨论 | 贡献2021年4月28日 (三) 14:44的版本
跳转至: 导航搜索

初始代码

    <view>
        <view>
            <image></image>
            <text></text>
        </view>
        <text></text>
        <image></image>
        <text></text>
        <view></view>
    </view>

改进代码

给组件添加了内容:

<view>
        <view>
            <image src=" /images/avatar/3.png"></image>
            <text>Nov 18 2020</text>
        </view>
        <text>2020LPL夏季赛季后赛观赛指南</text>
        <image src=" /images/lpl.png"></image>
        <text>8月9号,LPL常规赛收官之战结束,在事关</text>
        <view>
            <image src=" /images/icon/chat.png"></image>
            <text>92</text> 
            <image src=" /images/icon/view.png"></image>
            <text>102</text>
        </view>
    </view>

再改进代码

为组件添加了样式:

wxml:

<view class="post-container">
        <view class="post-author-date">
            <image class="post-author" src=" /images/avatar/3.png"></image>
            <text class="post-date">Nov 18 2020</text>
        </view>
        <text>2020LPL夏季赛季后赛观赛指南</text>
        <image src=" /images/lpl.png"></image>
        <text>8月9号,LPL常规赛收官之战结束,在事关</text>
        <view>
            <image src=" /images/icon/chat.png"></image>
            <text></text> 
            <image src=" /images/icon/view.png"></image>
            <text></text>
        </view>
    </view>

wxss:

.post-container{
  display: flex;
  flex-direction: column;margin-top: 20rpx;
  margin-bottom: 40rpx;
  background-color:#fff;
  border-top: 1px solid#ededed;
  border-bottom: 1px solid#ededed;
  padding-bottom: 10rpx;
}
.post-author-date{
  /*margin-top : 10rpx;margin-bottom: 20rpx;margin-left: 10rpx;*/
  margin: 10rpx 0 20rpx 10rpx;
}
  .post-author{
    width:60rpx;height:60rpx;
    vertical-align: middle;
  }
  

再又改进代码

用Flex布局设置元素居中:

  • display:flex;
  • flex-direction: row;
  • align-items:center;
.post-author-date{
  /*margin-top : 10rpx;margin-bottom: 20rpx;margin-left: 10rpx;*/
  margin: 10rpx 0 20rpx 10rpx;
  display:flex;
  flex-direction: row;
  align-items:center;
}
  .post-author{
    width:60rpx;height:60rpx;
    /* vertical-align: middle; */
  }
  .post-date{
    margin-left:20rpx;
    font-size:26rpx;
  }

再又再改进代码

<text class="post-title">2020LPL夏季赛季后赛观赛指南</text>

WXSS:

.post-title{
    font-size: 34rpx;font-weight: 600;
    margin-bottom: 20rpx; margin-left: 20rpx;
  }

再又再再改进代码

        <image class="post-image" src=" /images/lpl.png"></image>
        <text class="post-content">8月9号,LPL常规赛收官之战结束,在事关</text>

WXSS:

  .post-image{
    width: 100%;height: 340rpx;
    margin-bottom: 30rpx;
  }
  .post-content{
    color:#666;font-size: 28rpx;
    margin-bottom: 20rpx;
    margin-left:20rpx;
    line-height: 40rpx;letter-spacing: 2rpx;
  }