vue ui库为什么要不dropdwon-menu移到body上?

淡若清风过
  • 68

这看起来脱离文档流了呀

<template>
    <teleport to="body" :disabled="!transfer">
        <transition :name="transitionName">
            <div
                v-show="visible"
                class="ivu-select-dropdown"
                ref="drop"
                :class="mergedClass"
                :style="mergedStyle"
                v-bind="$attrs"
                @mouseenter="handleMouseenter"
                @mouseleave="handleMouseleave"
                @click.stop="handleClick"
            ><slot></slot></div>
        </transition>
    </teleport>
</template>
回复
阅读 363
2 个回答

什么叫脱离文档流?

移动到 body 是为了,避免父级有层级、或者 overflow 之类的导致被遮盖。

dropdown-menu移动body元素中有2个原因:

  1. 为了dropdown-menu中的样式不被父级元素污染
  2. 为了更好的计算定位
宣传栏