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>
回复
阅读 364
2 个回答

什么叫脱离文档流?

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

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

  1. 为了dropdown-menu中的样式不被父级元素污染
  2. 为了更好的计算定位
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏