ing

div+css经验技巧集锦

09-10-21 @ js/ajax /
 让你使用DIV+CSS排版 不是让你用换个标签然后再去按照表格的方式去排版而是做到内容与表现的分离。

1: ID用于标识页面单独元素以及持久行的结构性元素 方便JS的调用

类用于标识同一页面可重复定义使用的结构性元素 ID与类的命名需与表现形式无关 :leftContent 而使用有意义的定义方式:sideBar等等。命名方式遵循“驼峰式大小写(标志符由多个单词组成 除首词首字母小写外 其余单词首字母均大写)”

2:避免滥用类 当类型的结构需要不一样的表现时 记得什么是层叠样式表 具体结构中的p a h1等可使用如下方式:div.sideBar p{}定义即后代选择器+ID或类选择器组合方式。

3:DIV与SPAN IV(块级框)用于对块级元素的分组 SPAN(行内框)用于对行内元素分组标识

4:对于页面基本默认的方式可以选择通用选择器(*标识)进行定义 * { padding:0; margin:0;}

5: body 也是可以添加ID和类的 这样就可以为其添加特别样式。

6:样式表中导入样式表需在顶端 覆盖规则为本身样式覆盖导入样式

7:CSS样式表细分化 颜色 布局 风格 表单 均可分离 这样对以后的修改和风格设计更方便

8:盒模型:内→外
content←width height(补充:height只有在父元素定义了绝对高度时其%才有意义)
border
padding(内补丁)-“填充”
background-image
background-color
margin(外补丁)-“空白边”透明 可为负值

记住:在css中 width是指内容区域的宽度
IE/WIN与盒模型:

IE5.5/IE6怪异模式下: 元素框总宽度=content.width+margin.width

FireFox/Opera/..   :  元素框总宽度=content.width+padding.width+border.width+margin.width

差异在于:IE5.5/IE6怪异模式下 width=有效content.width+padding.width+border.width 内补丁和边框被算在内容宽度里面
#select{width:750px;padding:10px;border:5px} IE怪异模式:总宽度:750px FF/OP:780px

                                              IE怪异模式:有效内容宽度:750-20-10 FF/OP:750
IE6正常模式下:同于FF/OP
处理方法:在父元素或子元素中使用padding 本身不使用
空白边叠加:当两个空白边叠加时 顶或底边将会叠加 实际空白边高度=空白边大的值
例: <div id="top" style="margin:0 0 10px 0;"></div><div id="bottom" style="margin:20px 0 0 0;"></div>

     空白边高度为20px
但是如果这个时候你添加边框或则填充,将不再叠加

//定位机制//

9:相对定位(relative):相对于其默认初始位置 绝对定位:相对父级元素或画布、HTML元素 与文档流无关 可覆盖其他元素 使用Z-INDEX 控制其层次。IE5.5/IE6下 对right bottom时 需设定框的宽高 后则根据画布右底定位 
   绝对定位(absolute)
10:float浮动:记住:“在标准浏览器中 浮动元素脱离了文档流 不占据外围容器空间” 明白了这点 你就会明白为什么IE和FIREFOX下表现的不同了。IE5.5、IE6浮动元素依然占据外围容器空间

  例如:怎么在IE下feeter正常 在firefox下就跑上去了呢?^_^ 清除浮动吧

IE下 当float和text-align定义的方向一样时 出现双倍错误:

select{float:left;text-align:left;margin:0 10px;}
实际左边margin-left:20px;FF/OP:10px 解决:加上display:inline;

11:彻底理解 “清除浮动”clear
clear:none、left、right、both、
表示当前框元素哪些边不应该挨着浮动框
理解了10中float在不同浏览器下的表现 你也就知道如何去使用清楚了。
12: 背景图像的定位:只谈百分比 background:url(image-url.gif)no-repeat 20% 30% 20%:将图像X轴 20%处与父元素X轴20%处重合 Y同理 top=0% bottom=100% left=0% right=100% center=50%

13:滑动门/

左右两个DIV 背景分别定义 一般左背景图像比较长; 左背景定位:left center 右背景定位:right center

外部控制容器宽度一般小于等于两个背景和 这样当内容动态变化时候 右背景图像便感觉像在左背景图像上滑动,故名。
这 样也可以实现:<div id="nav"><ul><li><a href="index.html"& gt;<span>首页</span></a></li> </ul>< /div> css:

#nav a{float:left;background:url("../images/navLeft.gif") no-repeat left top;padding:0;text-decoration:none; cursor:hand;}
#nav a span {float:left;display:block;background:url("../images/navRight.gif") no-repeat right top;padding:5px 36px 5px 40px;color:#ffffff}

原理相似,注意背景图像定位。

14:完美的居中布局:body{text-align:center;mini-width:760px;}
                  div#wrapper{margin:0 auto;text-align:left;width:750px;}

mini-width IE并不认识 这是为老浏览器准备的,只是这个值比你需要的实际页面大就OK

15:小图标有时会给页面增色不少 用前记得规划好 整到一张大图片上 这样可以减少服务器请求次数。 或者通过RSS关注本站的更新 ^ O ^ 。” — by edikud @ 09-10-21 - 21:49。

转载请注明:来自eDIKUD'S Blog

Tag(s): css  
  • QQ书签
  • Del.icio.us
  • 百度收藏
  • Google
  • 饭否
  • FriendFeed
点击查看》》 暧昧文章 / 相关文章 / 热评文章

0 Comments Contributed by Visitors
Leave Comments Here...

:) lol 8) :-o evil :( wink :-| :-x twisted 8-O :-P oops idea :-D cry :-? ?

(required)

(required)

随您

(Ctrl+Enter)

Please calculate 5+2

  • 本站不会泄露您的邮件地址,敬请放心.
  • 支持常用 HTML 代码调用.
  • 仅当某人针对您的评论做出回应时,您才会收到由本站发出的通知信件.
  • 如您希望以相同方式通知某位网友,请点击 Reply 按钮,或自行输入@对方名字.
  • 允许在评论中贴的代码如下:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> .
  • 鼠标移植评论中的 @someone 区域即可自动显示 someone 的评论内容.