前端学习之布局

浮动和清除浮动解决方案

HTML结构示例

html 复制代码
<div class="wrap">
  <div class="left"></div>
  <div class="right"></div>
</div>

CSS实现方法

css 复制代码
.left {
  float: left;
  width: 50%;
}

.right {
  float: left;
  width: 50%;
}

.wrap::after {
  content: "";
  display: table;
  clear: both;
}

关键点说明

  • 浮动元素需要设置宽度,否则可能出现布局异常
  • ::after伪元素清除浮动是现代最推荐的方式
  • 清除浮动的原理是在容器末尾创建不可见元素来阻断浮动

固定定位解决方案

CSS完整代码

css 复制代码
.box {
  width: 100px;
  height: 100px;
  position: fixed;
  top: 0;
  left: 0;
}

特性说明

  • fixed定位基于视口而非文档流
  • 需要显式指定topleft值确定位置
  • 固定定位元素会脱离常规文档流

学习要点对比

浮动定位特点

  • 最初设计用于文字环绕效果
  • 浮动元素会脱离普通流但保留部分流动性
  • 需要处理父容器高度塌陷问题

固定定位特点

  • 位置相对于浏览器窗口保持不变
  • 不随页面滚动而移动
  • 常用于导航栏、悬浮按钮等场景

实际应用建议

  • 现代布局推荐优先考虑flexbox/grid
  • 浮动布局仍适用于传统浏览器支持需求
  • 固定定位要注意移动设备视口差异
相关推荐
lilihuigz8 小时前
Tutor LMS 4.0 Beta版全新上线:以学习者为中心的移动优先学习体验
学习·在线教育·lms
陈随易8 小时前
有生之年系列,Nodejs进程管理pm2 v7.0发布
前端·后端·程序员
冰暮流星9 小时前
javascript之事件代理/事件委托
前端
陈随易10 小时前
AI时代,你还在坚持手搓文章吗
前端·后端·程序员
kuinnebula11 小时前
RTSP学习
学习
里欧跑得慢12 小时前
17. Flutter Hero动画实现:让界面过渡更加优雅
前端·css·flutter·web
北顾笙98012 小时前
LLM学习-day04
学习
IT_陈寒12 小时前
Vue的这个响应式陷阱,我debug了一整天才爬出来
前端·人工智能·后端
kyriewen13 小时前
前端测试:别为了100%覆盖率而写测试,那是自欺欺人
前端·javascript·单元测试
去伪存真13 小时前
我自己写的第一个skills--project-core-standards
前端·agent