资讯专栏INFORMATION COLUMN

前端面试中最常问到的垂直水平居中问题

ccj659 / 1264人阅读

摘要:方法一和元素宽高未知的情况宽高未知方法二绝对定位和自身宽度一半,自身高度的一半已知宽高宽高已知方法三布局方法四被居中的元素是或者元素和元素方法五绝对定位和定高方法六父级高度和

方法一、 CSS3 transform和position(元素宽高未知的情况)

</>复制代码

  1. 宽高未知
  2. .box {
  3. width: 400px;
  4. height: 400px;
  5. background: #ccc;
  6. position:relative;
  7. }
  8. .box span {
  9. background: red;
  10. position: absolute;
  11. left: 50%;
  12. top: 50%;
  13. color: #fff;
  14. transform: translate(-50%, -50%);
  15. }

方法二、 绝对定位和margin-left:-自身宽度一半,margin-top: -自身高度的一半 (已知宽高)

</>复制代码

  1. 宽高已知
  2. .box {
  3. width: 400px;
  4. height: 400px;
  5. background: #ccc;
  6. position: relative;
  7. }
  8. .box span {
  9. display: inline-block;
  10. width: 100px;
  11. height: 100px;
  12. background: red;
  13. text-align: center;
  14. line-height: 100px;
  15. position: absolute;
  16. left: 50%;
  17. top: 50%;
  18. color: #fff;
  19. margin-left: -50px;
  20. margin-top: -50px;
  21. }

方法三、 css3 flex布局

</>复制代码

  1. .box {
  2. width: 400px;
  3. height: 400px;
  4. background: #ccc;
  5. display:flex;
  6. justify-content:center;
  7. align-items: center;
  8. }
  9. .box .child {
  10. display: inline-block;
  11. width: 100px;
  12. height: 100px;
  13. background: red;
  14. }

方法四、 被居中的元素是inline或者inline-block元素

</>复制代码

  1. inlineinline-block元素
  2. .box {
  3. width: 400px;
  4. height: 400px;
  5. background: #ccc;
  6. display: table-cell;
  7. text-align: center;
  8. vertical-align: middle;
  9. }
  10. .box .child {
  11. display: inline-block;
  12. width: 100px;
  13. height: 100px;
  14. background: red;
  15. }

方法五、绝对定位和margin:auto

</>复制代码

  1. 定高
  2. .box {
  3. width: 400px;
  4. height: 400px;
  5. background: #ccc;
  6. position: relative;
  7. }
  8. .box .child {
  9. width: 100px;
  10. height: 100px;
  11. background: red;
  12. text-align: center;
  13. color: #fff;
  14. line-height: 100px;
  15. position: absolute;
  16. top:0;
  17. right:0;
  18. bottom:0;
  19. left:0;
  20. margin: auto;
  21. }

方法六、line-height: 父级高度和text-align: center

</>复制代码

  1. line-height
  2. .box {
  3. width: 400px;
  4. height: 400px;
  5. background: #ccc;
  6. line-height: 400px;
  7. text-align: center;
  8. font-size: 0;
  9. }
  10. .box .child {
  11. background: red;
  12. font-size: 14px;
  13. color: #fff;
  14. }

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/52993.html

相关文章

  • 前端面试中最常问到的垂直水平居中问题

    摘要:方法一和元素宽高未知的情况宽高未知方法二绝对定位和自身宽度一半,自身高度的一半已知宽高宽高已知方法三布局方法四被居中的元素是或者元素和元素方法五绝对定位和定高方法六父级高度和 方法一、 CSS3 transform和position(元素宽高未知的情况) 宽高未知 .box { width: 400px; height: 400px; backgr...

    hatlonely 评论0 收藏0
  • 2019-我的前端面试

    摘要:先说下我面试情况,我一共面试了家公司。篇在我面试的众多公司里,只有同城的面问到相关问题,其他公司压根没问。我自己回答的是自己开发组件面临的问题。完全不用担心对方到时候打电话核对的问题。 2019的5月9号,离发工资还有1天的时候,我的领导亲切把我叫到办公室跟我说:阿郭,我们公司要倒闭了,钱是没有的啦,为了不耽误你,你赶紧出去找工作吧。听到这话,我虎躯一震,这已经是第2个月没工资了。 公...

    iKcamp 评论0 收藏0
  • 记录一次杭州顺网科技的面试过程

    摘要:以上是面试中笔试涉及到的知识点或者后面被问到的只是点。也许是根据薪资和面试的等级来出题的。我刚面试完回家,吃了一个泡面,回忆下面试题。同时作为传递到构造函数,执行了一次让构造函数里面的属性和方法赋值了一份给。 css 如何水平垂直居中,请尽量多说几种方法?很尴尬,我多次面试都被问到这个问题,fuck 定位(回答了)、table-cell布局、flex布局、translate+relat...

    shiguibiao 评论0 收藏0
  • 记录一次杭州顺网科技的面试过程

    摘要:以上是面试中笔试涉及到的知识点或者后面被问到的只是点。也许是根据薪资和面试的等级来出题的。我刚面试完回家,吃了一个泡面,回忆下面试题。同时作为传递到构造函数,执行了一次让构造函数里面的属性和方法赋值了一份给。 css 如何水平垂直居中,请尽量多说几种方法?很尴尬,我多次面试都被问到这个问题,fuck 定位(回答了)、table-cell布局、flex布局、translate+relat...

    caiyongji 评论0 收藏0
  • 我的前端面试

    摘要:前言这次找工作也面了好几家公司,也通过了好几家公司的面试,毕竟之前也准备了一段时间,所以面试的时候心里也不是很虚。的代码分割怎么实现的说说刚才提到的和的区别前端缓存怎么实现扯扯强缓存和协商缓存,重点问了如何实现缓存二面就聊了项目。。。 前言 这次找工作也面了好几家公司,也通过了好几家公司的面试,毕竟之前也准备了一段时间,所以面试的时候心里也不是很虚。 这里记录一下面试过程中被问到的问题...

    meteor199 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<