这个问题去css向导。我用谷歌搜索了这个,找不到答案。在这一点上,我不确定这是否可能:
如何指定一个元素在另一个元素中的位置,可以说是半绝对的?
我想说“将元素内部x 像素放在outer左边框的右侧,无论此时outer碰巧在哪里。”
这可能用 javascript 实现,但不应该用 css 实现吗?
这个问题去css向导。我用谷歌搜索了这个,找不到答案。在这一点上,我不确定这是否可能:
如何指定一个元素在另一个元素中的位置,可以说是半绝对的?
我想说“将元素内部x 像素放在outer左边框的右侧,无论此时outer碰巧在哪里。”
这可能用 javascript 实现,但不应该用 css 实现吗?
#inner {
position: absolute;
left: 10px;
}
这个 CSS 实际所做的是将#inner
元素定位在距离其“最近”父级的左边框 10px 处,该父级的位置值为absolute
、relative
或fixed
。如果没有找到这样的元素,它相对于该body
元素是绝对定位的,但是如果您确保内部元素的父元素的位置由 CSS 定义,它将绝对定位在该父元素中。
看看这个 JSFiddle。首先,查看 html 和 CSS 以了解它是如何构造的,然后继续使用鼠标拖动其中一个元素(这就是他们的 javascript 所做的,纯粹是为了演示目的)。请注意,当您拖动外部元素时,内部元素如何随之移动?当你拖动元素时,你所做的只是改变它们top
和left
属性的值,并且由于它的父元素是绝对定位的,所以无论你在屏幕上移动它的哪个位置,子元素都将保持在它的同一个位置。:D
绝对,这很容易!您所要做的就是指定父级具有一个位置(相对或绝对),然后绝对定位的子级将被定位为与最近定位的父级“相对”。
使困惑?