浮动

浮动初心主要解决图文并排显示问题
float:left right;向左向右浮动
解决父级元素高度塌陷:
1、清除浮动:clear:both;
2、BFC 给父元素添加overflow: hidden;

  1. * {
  2. margin: 0;
  3. padding: 0;
  4. box-sizing: border-box;
  5. }
  6. .box {
  7. border: 1px solid #ccc;
  8. overflow: hidden;
  9. }
  10. /* .box::after {
  11. content: '';
  12. display: block;
  13. clear: both;
  14. } */
  15. .box img {
  16. float: left;
  17. width: 15em;
  18. border-radius: 0.5em;
  19. margin: 1em;
  20. }
  21. .box .desc {
  22. overflow: hidden;
  23. }
  24. </style>
  25. <body>
  26. <div class="box">
  27. <img src="https://img.php.cn/upload/course/000/000/001/5fae4f08a043a576.png" alt="">
  28. <div class="desc">
  29. <h2>第十四期_前端开发</h2>
  30. <p>php中文网第十四期前端开发部分学习目标:1、HTML5+CSS3基础知识与实战; 2、完成网站所有静态页面布局;重点:弹性布局与网格布局;3.JavaScript、jQuery、ES6基础与实战 ;4.Vue.js基础与实战
  31. </p>
  32. </div>
  33. </div>
  34. </body>

效果图

总结:

1、浮动仅限于水平方向
2、浮动元素脱离了文档流,后面的元素会上移填充它原来的空间
3、浮动元素不会影响到它前面的元素布局,只会影响到后面的允素的排列
4、任何元素(包括行内元素)浮动后,都具备了块级元素的特征

BFC:创建独立的布局单元

创建BFC的方式:任何一个元素添加以下任何一个属性后就是一个BFC容器;
1、float:left / right,不能是none;
2、overflow:hidden/auto/scroll,不能是visible;
3、display:inline-block/ table-cell;
4、display:flex / inline-flex;
5、display:grid / inline-grid;
6、position:absolute / fixed

定位的种类

定位属性:position
1、静态定位:static 默认定位
2、相对定位:relative 相对自身的位置

  1. <style>
  2. * {
  3. margin: 0;
  4. padding: 0;
  5. box-sizing: border-box;
  6. }
  7. .box {
  8. width: 15em;
  9. height: 15em;
  10. border: 1px solid #ccc;
  11. overflow: hidden;
  12. margin: 0 auto;
  13. }
  14. .box h2 {
  15. position: relative;
  16. top: 1em;
  17. left: 1em;
  18. background-color: burlywood;
  19. }
  20. </style>
  21. <body>
  22. <div class="box">
  23. <div class="desc">
  24. <h2>第十四期_前端开发</h2>
  25. <p>php中文网第十四期前端开发部分学习目标
  26. </p>
  27. </div>
  28. </div>
  29. </body>

效果图

3、绝对定位:absolute 相对它的祖先中离它最近的定位元素的位置发生偏移,定位元素只能是相对定位或者绝对定位;

  1. .box h2 {
  2. position: absolute;
  3. top: 1em;
  4. left: 1em;
  5. background-color: burlywood;
  6. }

效果图

如果祖先中不存在定位元素,则相对于根元素发生偏移
4、固定定位:fixed;是绝对定位中的一个特例,始终相对于根元素定位

模态框小案例

  1. <style>
  2. * {
  3. margin: 0;
  4. padding: 0;
  5. box-sizing: border-box;
  6. }
  7. header {
  8. background-color: #ccc;
  9. padding: .5em 2em;
  10. }
  11. .modal .modal-back {
  12. position: fixed;
  13. top: 0;
  14. bottom: 0;
  15. left: 0;
  16. right: 0;
  17. background-color: rgba(0, 0, 0, .5);
  18. }
  19. .modal .modal-body {
  20. position: fixed;
  21. top: 10em;
  22. left: 30em;
  23. right: 30em;
  24. padding: 1em;
  25. width: 20em;
  26. height: 10em;
  27. border: 1px solid #000;
  28. margin: 0 auto;
  29. background-color: rosybrown;
  30. }
  31. .close {
  32. position: absolute;
  33. right: 1em;
  34. }
  35. .modal-body form {
  36. margin-top: 2em;
  37. }
  38. .modal-body form p {
  39. text-align: center;
  40. }
  41. </style>
  42. <body>
  43. <header>
  44. <h2>我的博客</h2>
  45. </header>
  46. <div class="modal">
  47. <div class="modal-back"></div>
  48. <div class="modal-body">
  49. <button class="close">关闭</button>
  50. <form action="">
  51. <p><label for="username">账号:</label><input type="text" name="username" id="username"></p>
  52. <p><label for="password">密码</label><input type="password" name="password" id="password"></p>
  53. <p><button>登录</button></p>
  54. </form>
  55. </div>
  56. </div>
  57. </body>

效果图

更多相关文章

  1. rem 、em、vh、 vw
  2. 1215css基础
  3. 1209列表元素
  4. flex元素常用属性
  5. C# 中居然也有切片语法糖,太厉害了
  6. 元素定位时间问题详解
  7. C语言 12.0
  8. 值得收藏的免费P图工具:用Ai一键替换照片中的任意元素
  9. Java爬虫可以非常溜

随机推荐

  1. 搭建Android应用程序的服务器
  2. Android游戏Graphics绘图之图像像素操作
  3. 价格战拉上了Android平板电脑
  4. Android与linux的区别与联系
  5. 浅析RxJava 1.x&2.x版本区别及原理(三):1.x
  6. Android Framework 分析---3PackageManag
  7. Android程序员指南(3)
  8. Android APP UI卡顿的原理
  9. 查看Android(安卓)API文档的正确方式
  10. Android开发艺术探索——第十章:Android的