网站内容无法对齐求助:菜单、最新文章与正文不对齐如何修复?
兄弟,这种布局错位的问题我简直遇到过八百次!虽然没看到你具体的代码,但我先给你列几个最容易踩的坑,你挨个排查下:
浮动元素没清干净:要是你的菜单、最新文章板块用了
float属性,那这些元素会脱离正常文档流,后面的正文很容易“跑”到它们旁边,看起来就不对齐了。你之前调clear没用?可能是没用到点子上。试试给包含浮动元素的父容器加个清除浮动的样式:.clearfix::after { content: ""; display: table; clear: both; }然后把这个类加到浮动元素的父容器上,应该能解决流错位的问题。
盒子模型计算搞砸了:你调padding、margin没效果?大概率是没设置
box-sizing!默认的content-box会让元素实际宽度=设置的width+padding+border,本来算好的宽度直接超了,自然错位。建议全局设置:* { box-sizing: border-box; }这样padding和border都会被包含在你设置的宽高里,布局控制起来就顺手多了。
容器宽度不统一:赶紧检查下菜单、最新文章、正文的外层容器宽度是不是一样的!比如菜单的父容器设了
width: 1200px,正文的父容器却是1180px,那肯定对不齐啊。最好给所有需要对齐的板块套一个统一的外层容器:.container { width: 1200px; margin: 0 auto; /* 顺便实现水平居中 */ }把菜单、最新文章、正文都塞到这个
.container里,对齐问题基本就解决一半了。浏览器默认样式捣乱:浏览器会给
body、ul这些元素加默认的margin或padding,比如body默认有8px的margin,ul默认有左内边距,这些看不见的默认值很容易打乱布局。先重置一下默认样式:body, ul, p { margin: 0; padding: 0; }把这些默认值清掉,再调布局就不会莫名其妙跑偏了。
要是这些方法都试过还是不行,你把代码贴出来,我帮你精准揪出问题所在!
内容的提问来源于stack exchange,提问作者Red7336

