我是编码和CSS的新手,并注意到当我调整浏览器大小时,所有浮动元素都向右移动,用户被迫水平滚动以查看菜单.
首先是否需要防止浮动元素不改变它们的位置?
其次,如果我应该阻止它,有没有办法可以避免这种情况?
最佳答案
浮子是一个痛苦的屁股.主要是因为一个浏览器拒绝遵循通用Web标准.是的,那个.
有一百万个技巧可以避免这些问题.我告诉我的团队遵循以下步骤:
>谨慎使用绝对定位的元素.如果你基于另一个元素进行定位,那么当事物以数学方式粘合到一个点时,事物可以“自动调整”但不是那么多.他们有自己的位置,而不是页面上的每个元素.
>考虑“重置”或基于网格的CSS布局.我个人更喜欢960 Grids他们从各种不同的浏览器中猜测. IE会推出你的填充吗?使用Firefox的IE特定填充是太多还是太少?通过重置和/或网格,这不是什么大不了的事.
>当进行百分比(我个人非常喜欢)时,请记住浏览器通常不使用数学,其中1 1 = 2.也就是说,如果你有一个1000像素的空间并且你并排执行两个50%的列,那么很有可能非常好的人会把自己推到另一个之下.为什么?因为浮点数,边距,边框等加起来,并且在不同的浏览器中有所不同.所以,设计时认为.9 .9 = 2.它一直有效吗?不.但这是一个开始.
>测试,测试,测试.像browserhots,Adobe Browser Labs等的东西是你的朋友.经常使用它们以确保您提供在所有平台上看起来一致的高质量代码.
>保持简单.您可能正在开发一个项目,该项目规定了100种不同的样式表,涵盖了每个浏览器的每个版本.我们大多数人都在使用实际预算来处理实际项目……这意味着您必须快速有效地部署.使用高质量的w3兼容代码和高质量的CSS,你可以完全避免黑客攻击.