为什么一切都有绝对的位置? 我正在尝试制作一个带标题的Panel,标题位于面板的子节点后面,因为孩子们处于绝对位置。 如果他们不尊重我的布局,我如何构建自定义视图?我希望控制孩子所在的位置。 我不喜欢这种做法可以让我清醒一下吗?
以下是简单的代码示例:
class MyPanel extends View {
String title;
MyPanel() {
}
@override
Element render_() =>
new Element.html('<div class="v-shadow"><div class="v-title">$title</div><div class="v-inner" id="$uuid-inner"></div></div>');
}
这是截图的结果,标题是一个蓝色虚线边框
答案 0 :(得分:0)
是的,绝对位置是故意设计的。简而言之,它确保Rikulo的观点是100%可控的。有关其背后的理念的更多信息,请参阅here和here。
与CSS不同,位置由您的应用程序(在Dart中)或使用the layout manager控制,例如线性布局和锚点布局。当然,您也可以提供自己的布局。
如果CSS布局符合您的要求,您可以使用TextView.fromHtml嵌入HTML片段。
注意:MyPanel的HTML片段应由CSS控制,因为只有视图(即你的MyPanel)是绝对定位的。由
render_()
生成的代码不会。