【发布时间】:2012-02-08 04:34:16
【问题描述】:
所以基本上我有这样的布局:
<div id="header">
<div id="elementAbsolute">
<div id="headerElement1">
<div id="headerElement2">
</div>
<div id="content">
etc etc
我的问题是 div id "elementAbsolute" 可以在页面上随机打开或关闭。我对此无能为力。当它打开时,它需要出现在标题下方但在内容之前。由于它是绝对定位的,它只是出现在内容之上。它显然不会在自身上方或下方创建任何垂直空白。
在这个特定的模板中,必须在标记中的位置调用该元素。它不能移动。有没有办法,可能通过 javascript,说如果“elementAbsolute”已打开并存在于“header” div 内的页面上,然后将它移动到 header 和 content div 之间并创建一些空白?
另外请记住,此模板用于多个站点,因此只有在“header”中存在“elementAbsolute”时才能添加空格。
我一直在考虑使用 jQuery after() 函数在它之前和之后放置一个空 div 以创建该空间,但后来我的问题变成了我只希望这个函数在“elementAbsolute”位于页面,否则无论如何我都会有空格。
感谢您的帮助!
【问题讨论】:
-
为什么不让它在打开时阻塞而不是绝对?
-
演示或 jsfiddle 会有所帮助。
-
“打开或关闭”是什么意思?它是显示属性还是根据条件呈现?
标签: jquery html css jquery-selectors css-position