css float的代码顺序和html页面显示顺序的问题
2017-05-14 16:38
501 查看
这其实不什么大problem,但是不注意的话也是不小的麻烦,so……
显而易见,上面不管是向左浮动还是向右浮动的代码中,div的排列顺序都是1、2、3,但是产生的效果却不一样,向左浮动和代码顺序一致,向右浮动则刚好相反。
原因其实so easy,首先,html代码的渲染都是从左至右滴,所以你不管是向左还是向右浮动,你的页面渲染顺序是和代码顺序是一致的,即div-1、2、3。
所以当页面渲染到div-1的时候,如果发现是向左浮动,那么立马将div-1放到最左边,而刚好想法是向右浮动的话,同理,会把div-1放到最右端,对于div-2和div-3也是一样,所以最终的效果就是:向左浮动的页面显示顺序和代码顺序一致,而向右浮动则完全相反。
代码
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <style> .div-right{ margin:0px; padding: 0px; height: 100px; width: 100px; float: right; color: white; } .div-left{ margin:0px; padding: 0px; height: 100px; width: 100px; float: left; color: white; } .div-1{ background-color: red; } .div-2{ background-color: green; } .div-3{ background-color: blue; } </style> </head> <body> <div class="div-right div-1"> 向右浮动 - 1 </div> <div class="div-right div-2"> 向右浮动 - 2 </div> <div class="div-right div-3"> 向右浮动 - 3 </div> <div class="div-left div-1"> 向左浮动 - 1 </div> <div class="div-left div-2"> 向左浮动 - 2 </div> <div class="div-left div-3"> 向左浮动 - 3 </div> </body> </html>
效果
显而易见,上面不管是向左浮动还是向右浮动的代码中,div的排列顺序都是1、2、3,但是产生的效果却不一样,向左浮动和代码顺序一致,向右浮动则刚好相反。
原因其实so easy,首先,html代码的渲染都是从左至右滴,所以你不管是向左还是向右浮动,你的页面渲染顺序是和代码顺序是一致的,即div-1、2、3。
所以当页面渲染到div-1的时候,如果发现是向左浮动,那么立马将div-1放到最左边,而刚好想法是向右浮动的话,同理,会把div-1放到最右端,对于div-2和div-3也是一样,所以最终的效果就是:向左浮动的页面显示顺序和代码顺序一致,而向右浮动则完全相反。
相关文章推荐
- bean:wreite 标签显示 html 代码在页面上
- HTML编辑器内容代码太长无法显示的问题
- iPhone代码碎片:处理objective-c里html特殊字符显示问题的一个函数
- ajax同步,页面显示与html代码不一致
- html显示空白页面的问题
- 解决jasperreports报表在HTML页面显示的PX图片的问题
- 浏览器加载显示html页面内容的顺序分析
- 关于ASP.NET页面嵌入代码的高亮显示的问题。
- 关于在前台页面插入C#代码的问题,导致页面不完全显示
- DataTable实现列位置交换,用于SQL语句无法解决字段页面显示顺序问题
- 解决FCKEditor在浏览器返回时显示html代码的问题
- 浏览器加载显示html页面内容的顺序
- 在Silverlight页面里显示HTML的免费控件下载(附使用方法代码)
- 浏览器加载显示html页面内容的顺序
- 在textarea中显示html页面的javascript代码
- CKeditor 或其他textarea在提交表单之后,在页面调用时显示html源代码的问题
- 在Silverlight页面里显示HTML的免费控件下载(附使用方法代码)
- CGI编程 - c语言实现 :网页显示HTML代码的问题
- 页面显示img等html代码
- IE6下加载html页面里的script顺序的问题