博主信息
博文 37
粉丝 0
评论 0
访问量 44331
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
box-sizing属性和元素居中方式
手机用户1607314868
原创
1567人浏览过

box-sizing

box-sizing让用户自己决定计算盒子大小的方式(要不要padding,border计算在内)
box-sizing:border-box设置盒子的长度值,将盒子的padding和border计算在长度内,这种盒子模型最早是由微软的IE浏览器实现的,称之为IE盒子模型。而这中IE盒子与w3C的标准盒子不一样,又被称为怪异盒模型

  1. <style>
  2. *{
  3. /*全局使用IE盒子模型 border-box是元素设置宽高就包含padding和border*/
  4. box-sizing:border-box;
  5. }
  6. .box{
  7. width:20px;
  8. height:30px;
  9. background-color:violet;
  10. }
  11. .box{
  12. padding:5px;
  13. border:2px solid;
  14. background-clip:content-box;
  15. }
  16. </style>
  17. <body>
  18. <div class="box">
  19. </div>
  20. </body>

元素高度:内容超出了怎么办?

文档流:是元素默认布局方式
当元素里内容过多,显示不出来时,可以设置overflow属性。overflow:visible显示溢出的内容。hidden隐藏溢出的内容。

常用元素居中方式

水平居中

1.行内或行内块水平居中
设置父元素的text-align:center;属性

2.块元素的水平居中
使用margin来实现块的水平居中,挤压式的居中
设置块元素的margin:0 auto;

垂直居中

1.行内或行内块垂直居中
设置line-height和父元素的height值一样。
2.块元素的垂直居中
使用padding属性,父元素不要设置高度,应该由padding挤出来。padding:值 0;padding的值视情况而定

  1. <style>
  2. .box{
  3. width:15em;
  4. height:15em;
  5. border:1px solid #000;
  6. }
  7. /*行内或行内水平居中*/
  8. .box{
  9. text-align:center;
  10. }
  11. /* 2.块元素的水平居中 */
  12. .box>div{
  13. width: 5em;
  14. height: 5em;
  15. background-color: yellow;
  16. }
  17. /* 使用margin来实现块的水平居中,挤压式的居中 */
  18. .box>div{
  19. /* auto:这个值由浏览器根据上下文自动计算 */
  20. margin-left: auto;
  21. margin:0 auto;
  22. }
  23. /*行内元素垂直居中*/
  24. .box a{
  25. /*值跟父元素的height高一样大小*/
  26. line-height:15em;
  27. }
  28. /*块元素垂直居中*/
  29. .box{
  30. padding:5em 0;
  31. }
  32. </style>
  33. <body>
  34. <div class="box">
  35. <a>php.cn</a>
  36. <div></div>
  37. </div>
  38. </body>

水平且垂直的解决方案

1.行内元素的水平且垂直
text-align+line-height
2.padding实现水平和垂直居中
让padding的四个值相等。
3.margin来实现
父元素的position:relative;
子元素的position:absolute;
top:0;left:0;right:0;bottom:0;margin:auto;

  1. <style>
  2. /* 1.行内元素的水平且垂直 */
  3. /* text-align + line-height */
  4. .box{
  5. width: 15em;
  6. height: 15em;
  7. border: 1px solid #000;
  8. }
  9. .box{
  10. text-align: center;
  11. line-height: 15em;
  12. }
  13. /* 2.padding 实现水平和垂直居中 */
  14. .box{
  15. padding:5em;
  16. }
  17. .box>div{
  18. width: 5em;
  19. height: 5em;
  20. background-color: yellow;
  21. }
  22. /* 3.margin来实现 */
  23. .box{
  24. position: relative;
  25. }
  26. .box div{
  27. position: absolute;
  28. top:0;
  29. left:0;
  30. right:0;
  31. bottom:0;
  32. margin:auto;
  33. }
  34. </style>
  35. <body>
  36. <div class="box">
  37. <a href="">php.cn</a>
  38. <div> </div>
  39. </div>
  40. </body>
批改老师:天蓬老师天蓬老师

批改状态:合格

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学