zoukankan      html  css  js  c++  java
  • margin 依附与可见的内容,不能为margin而写margin

    margin  依附于可见的内容,不能为margin而写margin

    <!DOCTYPE html>
    <html>
    <head>
    <style>
    p{margin:20px 0;}
    </style>
    </head>
    <body>
    <p>第-1个段落。</p>
    <p></p>
    <p>第一个段落。</p>
    <p>第二个段落。</p>
    <p>第三个段落。</p>
    </body>
    </html>

    <script>
      import wepy from 'wepy'
      import api from '../api/api'
      export default class recharge extends wepy.page {
        config = {
          navigationBarTitleText: '账户充值'
        }
        data = {
          notHere: {},
          apiRes: {},
          amountTab: {
            currentType: '0',
            amountType: [
              [1000, 0],
              [2000, 200],
              [5000, 1000],
              [10000, 3000]
            ],
            payType: 0
          }
        }
        async getAccountBalance() {
          const backEndRequire = {
            method: 'POST',
            header: {
              'Content-Type': 'application/x-www-form-urlencoded'
            }
          }
          let q = backEndRequire
          q.query = {
            uid: this.$parent.UID.uid,
          }
          const r = await api.getAccountBalance(q)
          this.apiRes.AccountBalance = r.data.data
          this.$apply()
        }
        onLoad() {
          this.notHere.commonCfg = wepy.$appConfig.common
          this.getAccountBalance()
        }
        phoneCall(e) {
          wx.makePhoneCall({
            phoneNumber: e.currentTarget.dataset.replyPhone,
            success() {}
          })
        }
        onTap(e) {
          const k = e.currentTarget.dataset.key
          const v = e.currentTarget.dataset.val
          this.amountTab[k] = v
        }
      }
    </script>
    <template>
      <view class="root_">
        <view>
          <view>账户余额
            <text class="question-mark">?</text>
          </view>
          <view>
            <view class="balance"><text>¥</text><text class="balance-num"> {{apiRes.AccountBalance['1'].val}} </text> <text>币</text></view>
          </view>
        </view>
        <view class="clear_both">充值金额</view>
        <view class="amountType-container">
          <repeat for="{{amountTab.amountType}}" key="index" index="index" item="item">
            <view class="amountType-item {{index===amountTab.currentType ? 'amount-item_select-after' :'amount-item_select-before'}}" @tap="onTap" data-key="currentType" data-val={{index}}>
              <view class="amountType-gift">{{index===0 ? ' ': '送'+item[1]+'币'}}</view>
              <view class="amountType-exchange-rate">
                <text>{{item[0]}}</text><text>元</text>=<text>{{item[0]+item[1]}}</text><text>币</text>
              </view>
            </view>
          </repeat>
        </view>
        <view class="clear_both">支付方式</view>
        <view class="pay-type">
          <view class="payType_img-separation">
            <view class="pay-type_select-before  {{amountTab.payType === '0' ? 'pay-type_select-after' : ''}}">
              <image @tap="onTap" data-key="payType" data-val="0" class="pay-type_img-width-height" src="{{notHere.commonCfg.localImgPath}}payWeixin.jpg"></image>
            </view>
          </view>
          <view class="payType_img-separation">
            <view class="pay-type_select-before  {{amountTab.payType === '1'  ? 'pay-type_select-after' : ''}}">
              <image @tap="onTap" data-key="payType" data-val="1" class="pay-type_img-width-height" src="{{notHere.commonCfg.localImgPath}}payAli.jpg"></image>
            </view>
          </view>
        </view>
        <view class="pay-number">应付金额
          <text>{{amountTab.amountType[amountTab.currentType][0]}}</text>元
        </view>
        <view>
          <button class="weui-btn weui-btn_mini weui-btn_primary recharge_button">立即充值</button>
        </view>
        <view class="contact">购买套餐,一键咨询:
          <text class="phone-number" data-reply-phone="0755123" bindtap="phoneCall">0755-123</text>
        </view>
      </view>
    </template>
    <style lang="less">
      // WXSS · 小程序 https://developers.weixin.qq.com/miniprogram/dev/framework/view/wxss.html
      @wx- 750rpx; // TODO 全局统一;2018年10月2日 16:29:42
      @wx-width_px: 750;
      @wx-width_rpx-num: 750;
      @wx-width_one-unit: @wx-width/@wx-width_rpx-num;
      @color-main_red: #F00;
      @color-main_blue: #2CABE2;
      @color-main_gray: #ADADAD;
      @root_padding-horizontal: @wx-width_one-unit*12;
      @wx-width_subtract-padding- @wx-width - @root_padding-horizontal*2;
      @common_border- @wx-width_one-unit; // 选中项的边框
      @common_select-after-font-size: @wx-width_one-unit*24; // 选中项的after-content字体大小
      .root_ {
        padding: @root_padding-horizontal;
      }
      .clear_both {
        clear: both;
      }
      .balance {
        font-size: @wx-width_one-unit*25;
        .balance-num {
          font-weight: normal;
          color: @color-main_red;
        }
      }
      .question-mark {
        border: @wx-width_one-unit solid @color-main_gray;
        color: @color-main_gray;
        border-radius: 50%;
        text-align: center;
      }
      .mixin_change-border-color(@c: @color-main_gray) {
        border: @common_border-width solid @c;
      }
      .mixin_item_select-before() {
        .mixin_change-border-color(@c: @color-main_gray);
      } // 没有点击选中前的公共样式;
      .mixin_item_select-after(@font-size: @common_select-after-font-size, @margin-top: @common_select-after-font-size) {
        display: block;
        float: right;
        content: "√";
        background-color: @color-main_blue;
        color: #fff;
        border-radius: 50%;
        font-size: @font-size;
        margin-top: -@margin-top;
      } // 点击选中后的公共样式;
      .amountType-container {
        // 盒子模型;注意view初始为display:block;
        @2items_margin- @wx-width_subtract-padding-width*0.02; // 并排的2个选项区域的外围margin;
        @item-separation-margin- @wx-width_subtract-padding-width*0.05; // 2个选项横排;选项margin水平间距;
        @item-border- @common_border-width; // 2个选项的border宽度;
        @item-available- @wx-width_subtract-padding-width - @2items_margin-width*2 - @item-border-width*4 - @item-separation-margin-width*4; // 待布局选项区域;
        @item-render- @item-available-width/2; // 选项最终被渲染的宽度;
        @item_select-after-font-size: @common_select-after-font-size;
        margin: 0 @2items_margin-width; //  @wx-width_one-unit;
        background-color: green;
        .amountType-item {
           @item-render-width;
          float: left;
          margin: @common_select-after-font-size*0.8 @item-separation-margin-width;
          .mixin_block-float(@f: right) {
            display: block;
            float: @f;
          }
          .amountType-gift {
            .mixin_block-float(@f: right);
            background-color: @color-main_red;
            border-radius: 20% 0 0 30%;
            color: #fff;
            font-size: 80%; //TODO exact
          }
          .amountType-exchange-rate {
            .mixin_block-float(@f: left);
            @v: 700;
            text:nth-last-child(2) {
              color: @color-main_red;
              font-weight: @v;
            }
            text:nth-child(1) {
              font-weight: @v;
            }
          }
        }
        .amount-item_select-before {
          .mixin_item_select-before();
        }
        .amount-item_select-after {
          .mixin_change-border-color(@c: @color-main_blue);
          &:after {
            .mixin_item_select-after(@font-size: @common_select-after-font-size, @margin-top: @common_select-after-font-size);
          }
        }
      }
      .pay-type {
        @pay-type_2imgs_padding-width : @wx-width_subtract-padding-width*0.1; // 并排的2项的区域的外围边框
        @pay-type_img-available- @wx-width_subtract-padding-width - @pay-type_2imgs_padding-width*2 - @pay-type_border-width*4; // 待布局图片的区域
        @pay-type_border- @common_border-width; // 无论是否被选中,项之间、选中前后都有相同的边框宽度;选中对边框的影响是改变边框颜色;
        @pay-type_imgs_width-share: 0.6; // 图片宽度份额,其他留作2张图片间的水平margin;
        @pay-type_img-margin- @pay-type_img-available-width*(1- @pay-type_imgs_width-share)/4; // 2张图之间的margin宽度
        @pay-type_img-render- @pay-type_img-available-width*@pay-type_imgs_width-share/2; // 图片最终被渲染的宽度
        @pay-type_img-width-divide-height: 98/40; // 原图 宽度 高度  98 40 像素 96*96 dpi;// 原2张图宽高像素比相同;//image-height("file.png");
        @pay-type_img-render-height: @pay-type_img-render-width/@pay-type_img-width-divide-height; // 保持图片宽高比,图片最终被渲染的高度
        @pay-type_amount-item_select-after-font-size: @common_select-after-font-size;
        display: inline-flex;
        padding: 0 @pay-type_2imgs_padding-width;
        height: @pay-type_img-render-height + @pay-type_border-width;
        .pay-type_img-width-height {
           @pay-type_img-render-width;
          height: @pay-type_img-render-height;
        }
        .payType_img-separation {
          margin: 0 @pay-type_img-margin-width;
        }
        .pay-type_select-before {
          .mixin_item_select-before()
        }
        .pay-type_select-after {
          .mixin_change-border-color(@c: @color-main_blue);
          &:after {
            .mixin_item_select-after(@font-size: @common_select-after-font-size, @margin-top: @common_select-after-font-size);
          }
        }
      }
      .contact {
        text-align: center;
        .phone-number {
          color: @color-main_blue;
        }
      }
      .recharge_button {
         90%;
        border-radius: @wx-width_one-unit*8;
        background-color: @color-main_blue;
        color: #fff;
      }
    </style>
    

      

  • 相关阅读:
    Maximum Depth of Binary Tree
    Single Number
    Merge Two Sorted Lists
    Remove Nth Node From End of List
    Remove Element
    Remove Duplicates from Sorted List
    Add Two Numbers
    编译视频直播点播平台EasyDSS数据排序使用Go 语言 slice 类型排序的实现介绍
    RTMP协议视频直播点播平台EasyDSS在Linux系统中以服务启动报错can’t evaluate field RootPath in type*struct排查
    【解决方案】5G时代RTMP推流服务器/互联网直播点播平台EasyDSS实现360°全景摄像机VR直播
  • 原文地址:https://www.cnblogs.com/rsapaper/p/9742526.html
Copyright © 2011-2022 走看看