要实现将一个元素在窗口上下左右居中,需要结合position: fixed和transform属性来完成。
要实现将一个元素在窗口上下左右居中,需要结合position: fixed和transform属性来完成。
具体操作步骤如下:
- 首先,需要将元素的position属性设为fixed,将其定位在浏览器窗口的位置上。
div{
position: fixed;
top: 50%;
left: 50%;
}
这样做会让这个元素距离窗口顶部和左侧各50%。然而,此时元素的左上角位于窗口左上角的(50%, 50%)位置,而我们需要的是将其中心点置于窗口中心,因此还需要对其进行位移。
- 利用transform属性,将元素往左上方移动其宽度和高度的一半。这样,元素的中心点就位于窗口中心了。
div{
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
这样,窗口中的元素就居中了。当然,如果我们只想将元素在水平方向上居中,可以将元素宽度设为固定值,然后使用margin: 0 auto;实现水平居中。
下面,我们来看两条具体的示例说明:
示例1:居中的div
HTML代码:
<div class="center">
<p>我是一段文字</p>
</div>
CSS代码:
.center{
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 200px;
height: 200px;
background-color: #f7f7f7;
border: 1px solid #ccc;
border-radius: 4px;
}
这段代码会将一个200x200的灰色div居中在窗口中,并在其中放置一段文本。
示例2:水平居中的div
HTML代码:
<div class="center2">
<p>我是一段文字</p>
</div>
CSS代码:
.center2{
position: fixed;
left: 0;
right: 0;
margin: 0 auto;
width: 200px;
height: 200px;
background-color: #f7f7f7;
border: 1px solid #ccc;
border-radius: 4px;
}
这段代码会将一个200x200的灰色div水平居中在窗口中,并在其中放置一段文本。
沃梦达教程
本文标题为:css中position:fixed实现div在窗口上下左右居中
基础教程推荐
猜你喜欢
- gbk编码的网页如何设置加载utf-8编码的js文件 2022-11-02
- 如何获取vuex的state对象中的属性 2023-10-08
- vue插槽的使用 2023-10-08
- Js动态创建div 2023-12-01
- JS实现登录页面记住密码和enter键登录方法推荐 2023-12-01
- 微信小程序开发之全局配置与页面配置实现 2022-08-30
- 使用fileReader的一个坑及解决 2023-08-11
- vue 中对 数组的操作 2023-10-08
- vue相关面试知识点总结 2023-10-08
- React+ajax+java实现上传图片并预览功能 2023-02-01