CSS中让元素居中在浏览器窗口怎样做

Admin 2022-09-19 群英技术资讯 503 次浏览

本篇内容介绍了“CSS中让元素居中在浏览器窗口怎样做”的有关知识,在实际项目的操作过程或是学习过程中,不少人都会遇到这样的问题,接下来就让小编带大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

元素在浏览器窗口居中的方法

这里先给出代码块,如果有同学已经看出来点眉目可以先自己尝试一下。

 position:fixed;  /*给想要居中的元素设置*/
 left:50%; /*或者right:50%*/
 top:50%; /*或者bottom:50%*/
 margin-left:-元素宽度的一半;  /*或者margin-right*/
 margin-top:-元素高度的额一半; /*或者margin-bottom*/

好,那接下来咱们就试一试吧!

<head>
    <meta charset="UTF-8">
    <style>
    /*box是在浏览器窗口居中,不是整个页面居中,这样你在上下滑动页面时,
    box元素是不动的,因此这里设置个box_compare元素能起参照作用,让它高度
    超过窗口高度,使页面出现滚动条*/
        .box_compare {
            width: 100%;
            height: 1000px;
            background: skyblue;
        }
        
        .box {
         /*给元素设置宽高*/
            width: 500px; 
            height: 300px;
            background: blue;
            position: fixed;
            left: 50%; /*元素最左边离窗口左边50%的距离*/
            top: 50%; /*元素最上边离窗口顶部上边50%的距离*/
            margin-top: -150px;
            margin-left: -250px;
        }
    </style>
</head>

<body>
    <div class="box_compare"></div>
    <div class="box"></div>
</body>

上面的方法其实有一个弊端,即,当元素未设置宽时是不能使用的,添加了定位后的元素未设置宽度的元素宽度由内容撑开的,因此不能使用这个方法,下面给大家提供一个更简捷的方法。

position: fixed; /*给想要居中的元素设置*/
left: 0;
right: 0;
top: 0;
bottom: 0;
margin: auto;

这个方法可能会有同学不理解,为什么又是left: 0;right: 0;又是top: 0;bottom: 0;,这个目的是为了将它变成一个自由的元素,这时元素的宽高在未设置时默认是父元素的宽高,再使用margin: auto;就能使它在浏览器窗口居中了,否则,添加了fixed的元素使用margin: auto;是无效的。
好,接下来我们再次尝试一下。

<head>
<meta charset="UTF-8">
 <style>
  /*box_compare和上面一样起对照作用*/
     .box_compare {
        width: 100%;
           height: 1000px;
           background: skyblue;
     }
     .box {
           width: 60%;
           height: 300px;
           background: blue;
           position: fixed;
           left: 0;right: 0;
           top: 0;bottom: 0;
           margin: auto;
      }
     </style>
</head>
<body>
     <div class="box_compare"></div>
     <div class="box"></div>
</body>


以上就是关于“CSS中让元素居中在浏览器窗口怎样做”的介绍了,感谢各位的阅读,希望这篇文章能帮助大家解决问题。如果想要了解更多知识,欢迎关注群英网络,小编每天都会为大家更新不同的知识。 群英智防CDN,智能加速解决方案
标签: css

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

猜你喜欢

成为群英会员,开启智能安全云计算之旅

立即注册
专业资深工程师驻守
7X24小时快速响应
一站式无忧技术支持
免费备案服务
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
在线客服
微信公众号
返回顶部
返回顶部 返回顶部
在线客服
在线客服