amis
amis copied to clipboard
remark和tooltip组件不是在body下生成,导致位置错乱
描述问题:
remark和tooltip组件不是在body下生成,导致位置错乱
截图或视频:
如何复现(请务必完整填写下面内容):
-
你是如何使用 amis 的? sdk引入
-
amis 版本是什么?请先在最新 beta 版本测试问题是否存在 2.2.0
-
粘贴有问题的完整
amis schema
代码:
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8" />
<title>amis demo</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
<link rel="stylesheet" href="public/sdk/sdk.css" />
<link rel="stylesheet" href="public/sdk/helper.css" />
<link rel="stylesheet" href="public/sdk/iconfont.css" />
<!-- 这是默认主题所需的,如果是其他主题则不需要 -->
<!-- 从 1.1.0 开始 sdk.css 将不支持 IE 11,如果要支持 IE11 请引用这个 css,并把前面那个删了 -->
<!-- <link rel="stylesheet" href="sdk-ie11.css" /> -->
<!-- 不过 amis 开发团队几乎没测试过 IE 11 下的效果,所以可能有细节功能用不了,如果发现请报 issue -->
<style>
html,
body,
.app-wrapper {
position: relative;
width: 100%;
height: 100%;
margin: 0;
padding: 0;
}
</style>
</head>
<body>
<div id="root"></div>
<script src="public/sdk/sdk.js"></script>
<script type="text/javascript">
(function () {
let amis = amisRequire('amis/embed');
// 通过替换下面这个配置来生成不同页面
let amisJSON = {
type: 'page',
title: '表单页面',
body: [{
type: 'form',
mode: 'horizontal',
api: '/saveForm',
body: [
{
label: 'Name',
type: 'input-text',
name: 'name'
},
{
label: 'Email',
type: 'input-email',
name: 'email'
},
]
}, { type: 'remark', content: '这是一段提醒' },]
};
let amisScoped = amis.embed('#root', amisJSON);
})();
</script>
</body>
</html>
- 操作步骤 你们官方自己的示例
👍 Thanks for this! 🏷 I have applied any labels matching special text in your issue.
Please review the labels and make any necessary changes.
@joker77877 正常情况下,tooltip和remark的弹层默认会插入body下,除非是配置了container属性。 请进一步确认下当前页面中remark和tooltip是否配置了container属性,最好能发下完整的页面schema。因为部分特殊容器类组件也会自动给内部的弹窗元素下发popOverContainer,比如CRUD、Card等组件。