一、使用CSS设置绝对定位元素的位置
.element { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
在CSS中,使用“绝对定位”将元素放置在其父元素的指定位置。要定位元素,请使用 position 属性。使用 top,bottom,left,right 属性,同时使元素脱离文档流,并且在其父元素中的位置被绝对规定。要将元素放置在父元素的中央,需要使用 top: 50%; left: 50%; 和 transform: translate(-50%, -50%);。
top 和 left 属性指定元素的左上角被放置到其包含元素中的距离。将这些属性设置为50%,会将元素的中心放置到包含元素的中心。translate(-50%, -50%) 将元素向左和向上移动50%的宽度和高度。由此,元素将相对于其包含元素的中心定位。
二、使用空白DIV容器进行元素定位
.container { position: relative; } .element { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
在这种方法中,我们使用一个“容器”DIV来容纳被绝对定位的元素。为包含元素指定 position: relative; 属性,并将绝对定位元素放置在其中。这使得元素相对于其父元素进行定位。容器元素不需要我们指定一个特定的高度值,因为它将使用被定位元素的尺寸作为其尺寸。
三、详细代码示例
.container { height: 400px; position: relative; background-color: #ddd; } .element { background-color: #ff0000; color: #fff; font-size: 2em; text-align: center; padding: 20px; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }我被绝对定位到了中央