z-index.uvue 1.5 KB
Newer Older
DCloud-yinjiacheng's avatar
DCloud-yinjiacheng 已提交
1 2
<template>
  <view style="flex-grow: 1;">
DCloud-yinjiacheng's avatar
DCloud-yinjiacheng 已提交
3
    <view>
4
      <view class="common fixed default">
DCloud-yinjiacheng's avatar
DCloud-yinjiacheng 已提交
5 6 7
        <text>position: fixed</text>
        <text>z-index: 10</text>
      </view>
8
      <view class="common fixed specified">
DCloud-yinjiacheng's avatar
DCloud-yinjiacheng 已提交
9 10 11
        <text>position: fixed</text>
        <text>z-index: 5</text>
      </view>
DCloud-yinjiacheng's avatar
DCloud-yinjiacheng 已提交
12
    </view>
DCloud-yinjiacheng's avatar
DCloud-yinjiacheng 已提交
13
    <view style="top: 250px;">
DCloud-yinjiacheng's avatar
DCloud-yinjiacheng 已提交
14 15 16
      <view class="common" style="background-color: red;z-index: 10;">
        <text>z-index: 10</text>
      </view>
DCloud-yinjiacheng's avatar
DCloud-yinjiacheng 已提交
17
      <view ref="view" class="common" style="background-color: green;z-index: 5;top: -37px;left: 87px;"
DCloud-yinjiacheng's avatar
DCloud-yinjiacheng 已提交
18 19 20 21
        @click="changeZIndex(20)">
        <text>z-index: {{zIndex}}</text>
        <text>点击修改z-index</text>
      </view>
DCloud-yinjiacheng's avatar
DCloud-yinjiacheng 已提交
22
      <view class="common" style="background-color: blue;top: -75px;left: 175px;">
DCloud-yinjiacheng's avatar
DCloud-yinjiacheng 已提交
23 24
        <text>z-index: 0</text>
      </view>
DCloud-yinjiacheng's avatar
DCloud-yinjiacheng 已提交
25 26 27 28 29 30 31 32 33 34 35 36 37 38
    </view>
  </view>
</template>

<script>
  export default {
    data() {
      return {
        zIndex: 5
      }
    },
    methods: {
      changeZIndex(zIndex : number) {
        this.zIndex = 20;
DCloud-yyl's avatar
DCloud-yyl 已提交
39
        (this.$refs['view'] as UniElement).style.setProperty('z-index', zIndex);
DCloud-yinjiacheng's avatar
DCloud-yinjiacheng 已提交
40 41 42 43 44 45
      }
    }
  }
</script>

<style>
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
.common {
  width: 125px;
  height: 125px;
  justify-content: center;
  align-items: center;
}
.fixed {
  position: fixed;
}
.default {
  background-color: red;
  z-index: 10;
  top: var(--window-top);
}
.specified {
  background-color: green;
  z-index: 5;
  left: 87px;
  /* #ifdef APP */
  top: 87px;
  /* #endif */
  /* #ifdef H5 */
  top: calc(var(--window-top) + 87px);
  /* #endif */
}
DCloud-yinjiacheng's avatar
DCloud-yinjiacheng 已提交
71
</style>