CSS框架/命名/规则 注意要点
作者:weilaixu 来源:weilaixu博客 发布时间:2008-06-03 13:07:00
1:为什么每个layout下都有个inlayout?
我们将layout的宽/浮动等属性设置好之后,对于layout内的padding和margin,是否还需要去计算呢?
而这个时候,自适应的inlayout,可以帮我们免除计算的步骤!!!同样,在移动不同layout的内容的时候,甚至不需要有任何动作,直接copy代码即可.
2:提高通用型DIV(GM)的利用率,会让你的工作效率大大提高.
通用型DIV,当然是以class来使用它,当一个页面上,相同的padding/margin值的DIV很多的时候,那么gm就是我们的最佳选择.不要笑话我,这个gm,是我在google内输入"通用"二字得到的...
3:换个方向float,可能会让你少费点脑筋.
我想在DIV1中设置N个DIV2,左浮动,向左margin为20px;但是我又想左边的div2和div1的边缘重合.....怎么解决margin-left的值呢?
思路一:float:right吧!!
思路二:padding-right.
思路三:表格.
思路四:加一个表格,然后margin负值...
大家可以试一试...
4:padding和margin的方向,在追求完美效果的同时,建议养成固定习惯.有利于以后的修改!
其实很多时候,在全局无float的情况下,或不同结构的情况下.margin-right和bottom是没有用的.
5:不要让文字破坏距离的美感...
我的标题设置好了...我的内容和标题有10px的距离,所以,我的div的padding为10px.可是,加上文字的行高,会让文字距离上方标题的长度大于其他方向,破坏了整体,所以,在文字内联及外联的时候,花一秒的时间想一下那个方向的padding或margin值应该小一点!
6:百分比的恶搞!
我要做一个无论什么分辨率下,都是全屏幕的网站.这个时候要注意了,50%+50%=100%,算术上是非常正确的.但是浏览器有的时候很容易把它算成101%..怎么避免?49.9%+49.9%就可以了..
7:关于文本缩进.
先清除p的值,然后赋予它text-indent:2em.如果它的行高,颜色等各有不同.那么<p class=""></p>吧.把不同的设置到class里..
在处理很长的文本的时候,直接copy文本在视图下粘贴,然后进入代码视图,一头一尾加上p和/p,中间位置用查找替换,查找,替换成</p><p>,之后你会发现,原来处理文字其实这么简单!
8:巧用display:block...
weilaixu是个非常懒的人,他在排一个栏目标题+一段文字列表或其他东西时,先设置一个hx,比如h2,h2{font-size:14px; font-weight:bold; display:block; padding-top:4px; boder-bottom:1ps solid #ccc;},然后设置一个ul,最后,在一个div内用以下方法:
<div class="gm">
<h2>新闻中心</h2>
<ul>
<li></li>
<li></li>
</ul>
</div>
而当只有N行文字的时候,比如N行文字又在img下边,每行都不一样,都有链接,这个时候,weilaixu懒到直接把每行文字的css上加上display:block.....搞定!
9:图文混排最龌龊的方法.
如果图片上没链接,特别是静态的时候,weilaixu正常是这个样子:
<div style="background:url(图片路径) left top no-repot; padding-left:(图片宽+10);width= height=">文字文字文字</div>
而在图片有链接,或是动态的时候:
<div class=gm><img src="图片路径" width= height= boder= style="padding-right:10px; float:left"><a>文字文字文字</a></div>
这样了事.....而且,支持所有浏览器哦!
10:关于浮动:float;
如果你float用的很纯熟,计算的很到位,那么,它并不危险,甚至不需要去清除浮动...
如果你float很纯熟,但布局时犯了个未知错误,或修改工作量太大,那么,怎么半呢?这里以左右结构为例,就像我的blog;
从出错的那个float所在的div开始,向上所有位置在它前边的div让它position:absolute起来,然后在该div上position:absolute,加上float,这个时候,即使你是计算错误,还是其他...大不了左右中的一边被盖住一些,没问题....就象在宽度低于990px的屏幕上看我的blog..
关于循环的浮动,把宽度和高度问题解决,margin解决,基本不会有太大的问题..如果加上clear,那就更完美了...
下边说说解决DIV高度自适应内容的问题:
不设高度,overflow:hidden;
如果div内有浮动,则辅以清除浮动clear来解决针对IE6的有可能无法解析到高度的情况
如果浮动循环,那么,建议使用嵌套写法,可以自然的避免IE6的毛病!
循环浮动内,最好不要有HTML注释<!---->,否则IE6的BUG会让你吃尽苦头!
对于html解析DIV的高度,以下几种情况:
1:全为font文字的时候,无需设置高度,也无须overfllow,自动解析。
2:全部为img时,同上
3:图img文font混排时,需设置overfllow
4:object,特别是利用js插入flash时,需设置overfllow,但最好设置height;
补充,如果flash文件被js从文档流中移出,则必须设置height
补充,对于左图右文或右文左图的排列,推荐使用嵌套写法,div内直接包含img和font,img设置float,利用padding来控制img和文的隔离,font无需浮动。这种情况最容易让ie6判断不了高度!
补充,在浮动出错时,应用嵌套写法.会避免很多问题


猜你喜欢
- 问题问题1:如何解决事务提交时flush redo log带来的性能损失WAL是实现事务持久性(D)的一个常用技术,基本原理是将事务的修改记
- Microsoft SQL Server 2005 Mobile Edition 3.0 (SQL Server Mobile) 支持两种与
- 如下所示:numpy.power(x1, x2)数组的元素分别求n次方。x2可以是数字,也可以是数组,但是x1和x2的列数要相同。 >
- python实现文本进度条 程序进度条 加载进度条 单行刷新功能,具体内容如下所示:利用time库来替代某个程序 的进行过程,做实例,思路是
- str='python String function'生成字符串变量str='python String func
- 在开发中常常会遇到这样一个vue页面,页面分为左右两部分,左边是目录树,右边是一个类名为xq-box的div,在xq
- <div> <a 
- 本文实例讲述了Python解决走迷宫问题算法。分享给大家供大家参考,具体如下:问题:输入n * m 的二维数组 表示一个迷宫数字0表示障碍
- 名词解释断号:比如,连续生成的编号,由于某种操作(通常为删除)后,产生不连续的编号,我们将这种不连续的编号称为断号。例如,数据库中有一个字段
- import os ## for os.path.isfile()def dealline(line) :  
- 这篇博客主要是为了学习Python和PyQt,因为对棋类游戏比较热衷,所以从规则较简单的五子棋入手,利用PyQt5实现图形界面,做一个可以进
- MySQL是一款关系型数据库管理系统,是由Oracle旗下公司MySQL AB 公司开发,是在web方面最好的、最流行的关系型数据库软件应用
- #BEGIN CONFIG INFO#DESCR: 4GB RAM, 只使用InnoDB, ACID, 少量的连接, 队列负载大#TYPE:
- 1、重装后启动mysql服务,提示 本地计算机无法启动 mysql 服务 错误 1067:进程意外终止。2、查看mysql根目录下有一 计算
- 尽管人们期望在屏幕上有些改变,但是CSS和HTML对页面中的交互能做的实在太少了,而那些还需要用代码来实现。比如一个链接要么是这个颜色,要么
- 看了大神统计voc数据集标签框后,针对自己标注数据集,灵活应用 ,感谢!看代码吧~import reimport osimport xml.
- 1、查找字符串除了使用index()方法在字符串中查找指定元素,还可以使用find()方法在一个较长的字符串中查找子串。如果找到子串,返回子
- http://serverName/appName/module/action/id/1/这个就是pathinfo模式在不考虑路由的情况下,
- 终于构建出了第一个神经网络,Keras真的很方便。之前不知道Keras这么方便,在构建神经网络的过程中绕了很多弯路,最开始学的TensorF
- swoole —— 重新定义PHPswoole 的进程之间有两种通信方式,一种是消息队列(queue),另一种是管道(pipe),对swoo