我有一个我构建的函数(目前它是一种简单的骨骼),但是当它展开 onMouseOver 时我找不到如何移动对象,所以它不会移动页面上的其他对象,这可能吗?
function expandbox(x) {
x.style.height = "100px";
x.style.width = "100px";
}
function returnbox(x) {
x.style.height = "80px";
x.style.width = "80px";
}
我有一个我构建的函数(目前它是一种简单的骨骼),但是当它展开 onMouseOver 时我找不到如何移动对象,所以它不会移动页面上的其他对象,这可能吗?
function expandbox(x) {
x.style.height = "100px";
x.style.width = "100px";
}
function returnbox(x) {
x.style.height = "80px";
x.style.width = "80px";
}
如果您想将元素保持在文档流中,请将其设置为并使用andposition: relative
移动它,这将与元素开始的位置相关。top
left
我将使用您制作的相同类型的函数来演示:
function moveBox(x) {
x.style.position = "relative";
// move 20px down and 10px left from original position
x.style.top = "20px";
x.style.left = "-10px";
}
如果您想从文档流中删除该框(以下元素不会受到其存在的影响),请将其位置设置为absolute
。顶部和左侧值将相对于其最近的定位祖先(或者<body>
如果没有,我在下面的评论中假设)
function moveBox(x) {
x.style.position = "absolute";
// position box 20px from top of body
x.style.top = "20px";
// and 10px from the left
x.style.left = "10px";
}
一个元素被认为是“定位的”,如果它的值不是static
(默认,在这里阅读更多),所以如果你想控制绝对定位的元素相对于什么,你可以给一个容器元素position: relative
使元素位置在相对容器内相对,然后更改其尺寸。
确保给它更高的 z-index。
将其与 的left,right,top,bottom
属性一起放置style
。