博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
圣杯布局与双飞翼布局的实现思路
阅读量:5093 次
发布时间:2019-06-13

本文共 1076 字,大约阅读时间需要 3 分钟。

主要为了理解思考的过程,而不是仅仅为了背过一段代码。 1负边距  margin-left为负值,且两个元素不在一行的时候(可以用父元素float:left,width:100%实现)margin-left可以吃掉父元素的margin. 想像一下,假设width:99%,右边留一条缝隙,当margin-left为负值,即可让右边的这条缝隙向左走 即当使用margin左负值,超过自身的宽度时,这个元素在第一行就有位置了。 而margin的负值达到-100%时,恰能达到窗口最左侧。。 这个100%为父元素的宽度。同理我们假设要挤的元素宽度为200px,则 “挤”200px就可以让这个元素完全挤到父元素的右边去。 考虑以下结构 [crayon-50361f9fef2a7/] [crayon-50361f9fef68b/] 以上为第一步,可以看到left,right到了正确位置。这时肯定有疑问了?这个main怎么没了?因为被挤跑了呗 2 给挤的空间留空 考虑padding属性,会给元素的边缘留出缓冲空间,即我人为的留给你空间让你挤,比如padding:0 200px,左右两边留出了200让你使劲挤。这时候出问题了,因为文档流里,块状元素盒子包括padding啊,如果挤的话整个盒子不就跑了么。 这时能够脱离文档流的定位出场了,我无视你,就在你上面的空间挤,然后父元素眼睁睁的看着上面挤,下面留出被遮挡的空间就是了。 这种思路即圣杯布局。(负边距+定位) 给个空间: [crayon-50361f9fefa88/] [crayon-50361f9fefe58/] [crayon-50361f9ff0244/] [crayon-50361f9ff062b/] [crayon-50361f9ff0a13/] [crayon-50361f9ff0e66/] 3.淘宝UED对此的优化 圣杯布局已经挺好了,但是利用了相对定位。如果人为加一个标签,来控制上面说的“挤”的空间呢? 完整代码 [crayon-50361f9ff11e1/]   [crayon-50361f9ff15c8/] [crayon-50361f9ff19b1/] »本文地址:http://99jty.com/?p=432 »订阅本站:http://winysky.com/feed/»当你从RSS阅览器里看到这篇文章时,还没有评论,还不赶紧过来抢沙发?

转载于:https://www.cnblogs.com/99f2e/archive/2012/03/07/2653125.html

你可能感兴趣的文章
yum 崩溃的解决方法
查看>>
Entity Framework之问题收集
查看>>
渗透小助手——几个密码收集工具
查看>>
MapReduce入门(二)合并小文件
查看>>
JSON在Java中的使用(一)
查看>>
Open 常用开源
查看>>
C# .net中获取台式电脑中串口设备的名称
查看>>
中国快递包裹总量的预测-基于SARIMA模型
查看>>
json的使用
查看>>
Package.json 属性说明
查看>>
第一次提交本地代码到github上
查看>>
数据是ERP系统搭建的基础,但,不要让数据毁了ERP
查看>>
远程连接服务器出现 SQL Error (1130): Host IP is not allowed to connect to this MySQL server 错误...
查看>>
调用java的webservice返回null
查看>>
深浅拷贝
查看>>
QT学习笔记—1
查看>>
#leetcode刷题之路27-移除元素
查看>>
python range 和 xrange 区别
查看>>
Microsoft Visual Studio Web 创作组件安装失败的解决方法
查看>>
多线程,多进程使用场景
查看>>