淘宝初始化代码

  1. body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td { margin:0; padding:0; }
  2. body, button, input, select, textarea { font:12px/1.5tahoma, arial, \5b8b\4f53; }
  3. h1, h2, h3, h4, h5, h6{ font-size:100%; }
  4. address, cite, dfn, em, var { font-style:normal; }
  5. code, kbd, pre, samp { font-family:couriernew, courier, monospace; }
  6. small{ font-size:12px; }
  7. ul, ol { list-style:none; }
  8. a { text-decoration:none; }
  9. a:hover { text-decoration:underline; }
  10. sup { vertical-align:text-top; }
  11. sub{ vertical-align:text-bottom; }
  12. legend { color:#000; }
  13. fieldset, img { border:0; }
  14. button, input, select, textarea { font-size:100%; }

常见的浏览器内核引擎以及具体应用:

     Trident: IE;
     Gecko: Firefox;
     webkit: Safari,Google Chrome,遨游3,猎豹,百度;
     Presto:Opera——Opera mini
 
书写顺序:firefox,IE8,IE7,IE6
 
IE6:*,_
IE7:*,+
IE8:\9,\0
 
chrome:-webkit-
firefox:-moz-,root(仅ff认)
 
  • *        , ie6,ie7可以识别;
  • _和- ,  ie6可以识别;
  • !important  ,表示高优先级,ie7及以上,firefox都支持,ie6认识带!important的样式属性,但不认识!important的优先级;
  • -webkit- ,针对safari,chrome浏览器的内核CSS写法
  • -moz-,针对firefox浏览器的内核CSS写法
  • -ms-,针对ie内核的CSS写法
  • -o-,针对Opera内核的CSS写法
    如果只让ie6看见用        *html .head{color:#000;}
  如果只让ie7看见用 *+html .head{color:#000;}
  如果只让ff看见用: root body .head{color:#000;}
  如果只让ff、IE8看见用 html>/**/body .head{color:#000;}
  如果只是不让ie6看见用 html>body .head{color:#000;} 即对IE 6无效
  如果只是不让ff、IE8看见用 *body .head{color:#000;} 即对ff、IE8无效
  1. .div1{
  2. *position:relative;
  3. -moz-background-size:50%;
  4. -ms-content-zoom-limit-max:50%;
  5. -o-box-shadow:5px10px20px#f0f;
  6. }
  7. .div2{
  8. position:absoulte!important;
  9. }
 
 
第一问:宽度问题
给div一个 width:300px;padding:10px;
Firefox实际宽度320px,padding是填上去的;支持!important,IE忽略
IE6实际宽300px,padding是300px里面的,把content往里面挤;
 
页面的最小宽度 
IE不认得min-,而它实际上把 width当做最小宽度来使。为了让这一命令在IE上也能用,可以把一个<div> 放到 <body> 标签下,然后为div指定一个类,然后CSS这样设计: 
#container{ min-width: 600px; width:expression(document.body.clientWidth < 600? "600px": "auto" );} 
第一个min-width是正常的;但第2行的width使用了Javascript,这只有IE才认得,这也会让你的HTML文档不太正规。它实际上通过Javascript的判断来实现最小宽度。
 
 
第二问:水平居中问题
IE下只要设置body{text-align:center;}这样就可以居中显示。
Firefox不行  解决:body:{text-align:center;margin:0px auto;}
 
第三问:在mozilla firefox和IE中的BOX模型解释不一致导致相差2px
           div{margin:30px!important;margin:28px;} 
 
第四问:CSS透明问题 
          IE:filter:progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=60)。 
          FF:opacity:0.6。 
         [注] 最好两个都写,并将opacity属性放在下面。
  或filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#19ffffff,endColorstr=#19ffffff);

第五问:圆角问题
        IE:ie7以下版本不支持圆角。 
        FF: -moz-border-radius:4px 
 
浏览器bug 
IE的双边距bug

设置为float的div在ie下设置的margin会加倍。这是一个ie6都存在的bug。

解决方案:在这个div里面加上display:inline;

 
浮动
DIV浮动IE文本产生3象素的bug 
左边对象浮动,右边采用外补丁的左边距来定位,右边对象内的文本会离左边有3px的间距.
 
#box{ float:left; width:800px;} 
#left{ float:left; width:50%;} 
#right{ width:50%;} 
*html #left{ margin-right:-3px; //这句是关键} 
<div id="box"> 
<div id="left"></div> 
<div id="right"></div> 
</div> 
 
IE捉迷藏的问题 
当div应用复杂的时候每个栏中又有一些链接,DIV等这个时候容易发生捉迷藏的问题。 
有些内容显示不出来,当鼠标选择这个区域是发现内容确实在页面。 解决办法:对#layout使用line-height属性 或者给#layout使用固定高和宽。页面结构尽量简单。
 
IE的layout私有属性
作为外部 wrapper 的 div 不要定死高度,为了让高度能自动适应,要在wrapper里面加上overflow:hidden; 当包含float的box的时候,高度自动适应在IE下无效,这时候应该触发IE的layout私有属性(万恶的IE啊!)用zoom:1;可以做到,这样就达到了兼容。
.colwrapper{ overflow:hidden; zoom:1; margin:5px auto;} 
 
排版
我们用得最多的css描述可能就是float:left.有的时候我们需要在n栏的float div后面做一个统一的背景,譬如: 
<div id=”page”> 
<div id=”left”></div> 
<div id=”center”></div> 
<div id=”right”></div> 
</div> 
我们要将page的背景设置成蓝色,以达到所有三栏的背景颜色是蓝色的目的,但是我们会发现随着left center right的向下拉长,而page居然保存高度不变,问题来了,原因在于page不是float属性,而我们的page由于要居中,不能设置成 float,所以我们给他加个父元素 page变成爷爷;
 
高度不适应 
高度不适应是当内层对象的高度发生变化时外层高度不能自动进行调节,特别是当内层对象使用margin 或paddign 时。 
例: 
#box { } 
#box p {margin-top: 20px;margin-bottom: 20px; text-align:center; } 
<div id="box"> 
<p>p对象中的内容</p> 
</div> 
解决技巧:在P对象上下各加2个空的div对象CSS代码:.1{height:0px;overflow:hidden;}或者为DIV加上border属性。 
 
IE6下为什么图片下有空隙产生 
解决这个BUG的技巧也有很多,可以是改变html的排版,或者设置img 为display:block 或者设置vertical-align 属性为vertical-align:top   bottom  middle  text-bottom 都可以解决. 
 
IE的css bug 
在p:first-letter和{font-size:300%}加上空格,也就是p:first-letter {font-size:300%}后,显示就正常了。但是同样的代码,在FireFox下看是正常的。按道理说,p:first-letter{font-size:300%}的写法是没错的。那么问题出在哪里呢?答案是伪类中的连字符”-”。IE有个BUG,在处理伪类时,如果伪类的名称中带有连字符”-”,伪类名称后面就得跟一个空格,不然样式的定义就无效。而在FF中,加不加空格都可以正常处理。
 
div设置 margin-left, margin-right 为 auto 时已经居中,IE 不行,IE需要设定body居中,首先在父级元素定义text-algin: center;这个的意思就是在父级元素内的内容居中。
 
垂直居中=>内容换行问题

一个高30px的div,默认显示左上角,如果想垂直居中对其可以加个line-height:30px;样式。如果你想让他居下方则修改line-height

数值越大越下,为了防止撑破,还需要再给一个样式overflow:hidden; 

块级对象设置三个样式解决浏览器默认值:宽高overflow

LI中内容超过长度后以省略号显示的技巧 
此技巧适用与IE与OP浏览器

li { 
width:200px; 
white-space:nowrap; 
text-overflow:ellipsis; 
-o-text-overflow:ellipsis; 
overflow: hidden; 

为什么web标准中IE无法设置滚动条颜色了 
解决办法是将body换成html 

html { 
scrollbar-face-color:#f6f6f6; 
scrollbar-highlight-color:#fff; 
scrollbar-shadow-color:#eeeeee; 
scrollbar-3dlight-color:#eeeeee; 
scrollbar-arrow-color:#000; 
scrollbar-track-color:#fff; 
scrollbar-darkshadow-color:#fff; 

为什么无法定义1px左右高度的容器 
IE6下这个问题是因为默认的行高造成的,解决的技巧也有很多,例如:overflow:hidden   zoom:0.08   line-height:1px

css初始化
其中margin属性对IE有效,padding属性对FireFox有效。
  1. body,div,dl,dt,dd,ol,h1,h2,h3,h4,h5,h6,form,input,p,th,td{margin:0;padding:0;}
  2. img{border:0px;}
  3. ul {margin:0px;padding:0px;}/
  4. ul li {list-style:none;}

/* Clear Fix */ 
.clearfix:after { 
content:”.”; 
display:block; 
height:0; 
clear:both; 
visibility:hidden; 

.clearfix { 
display:inline-block; 

/* Hide from IE Mac */ 
.clearfix {display:block;} 
/* End hide from IE Mac */ 
/* end of clearfix */

或者这样设置:.hackbox{ display:table; //将对象作为块元素级的表格显示}

太多了 参考:http://www.jb51.net/css/43686.html

css兼容性写法大全的更多相关文章

  1. CSS- ie6,ie7,ie8 兼容性写法,CSS hack写法

    css ie6,ie7,ie8 兼容性写法,CSS hack写法 margin-bottom:40px;       /*ff的属性*/margin-bottom:140px\9;    /* IE6 ...

  2. css各浏览器的兼容性写法

    各浏览器下的兼容性写法 老版Chrome     -webkit-xxx FF                  -moz-xxx IE9                 -ms-xxx opera ...

  3. css兼容性问题的整理

    css兼容性问题的整理 1.文字本身的大小不兼容.同样是font-size:14px的宋体文字,在不同浏览器下占的空间是不一样的,ie下实际占高16px,下留白3px,ff下实际占高17px,上留白1 ...

  4. css常用代码大全以及css兼容(转载)

    css常见的快捷开发代码汇总(长期更新),包括CSS3代码,有一些css效果很顽固,经常会一时找不出解决方案,网络上也有很多的工具和高手提供了具体的浏览器兼容代码,这个页面我今后会经常整理,希望能够帮 ...

  5. 常用原生JS方法总结(兼容性写法)

    经常会用到原生JS来写前端...但是原生JS的一些方法在适应各个浏览器的时候写法有的也不怎么一样的... 今天下班有点累... 就来总结一下简单的东西吧…… 备注:一下的方法都是包裹在一个EventU ...

  6. css清除浮动大全共8种方法

    原文链接http://www.jb51.net/css/173023.html 清除浮动是每一个 web前台设计师必须掌握的机能.css清除浮动大全,共8种方法. 浮动会使当前标签产生向上浮的效果,同 ...

  7. CSS3-border-radius的兼容写法大全

    <!DOCTYPE html><html lang="zh-cn"><head> <meta charset="utf-8&qu ...

  8. CSS兼容性

    1,浮动 ie6中,设置浮动的元素,width自动包裹内容了.通常我们要设定一下这个元素的宽度 子元素浮动父容器高度不能自适应的CSS解决方法 网页前端工作者经常会遇到子元素设置float浮动后导致父 ...

  9. android 4.4.3 css hack 写法

    最近发现android在4.4.3上面出现很多怪异的现象,现在虽然没有找到原因和解决方案,但是突然间找到一个css hack写法: button{ display:none; width:$rem*4 ...

随机推荐

  1. Tomcat虚拟目录设置

    ssh $host "rm -fr /var/www/$tomcat_name/webapps/*" 远程分发war包部署tomcat项目时,需要先清除项目目录. -------- ...

  2. 正则表达式(Kotlin)

    课题 使用正则表达式匹配字符串 使用正则表达式 "\d{3}-(\d{4})-\d{2}" 匹配字符串 "123-4567-89" 返回匹配结果:'" ...

  3. C#调用C++

    c++ extern "C" __declspec(dllexport) char* WINAPI base64_decode( char *data,char base[]) { ...

  4. Angular2 web project UltraRacing (一,如何启动一个Angular项目?)

    要稍等一会 切到目录看看 OK,生成很多文件 那么 我们来启动吧 出现下面信息说明成功 而且每次我们编译文件后 都会在cmd里面显示这个信息 说明他是热部署的 然后我们去浏览器看看 说明一切OK!

  5. android资讯类软件框架《IT蓝豹》

    android资讯类软件框架 android资讯类软件框架,支持侧滑,并且首页viewpager切换tab,tab滑动到最右侧的时候提示滑动结束, 滑动到最左侧的时候切换滑动侧滑menu.左滑和侧滑处 ...

  6. CSS----学习2

    CSS2属性 文本 1 水平对齐方式 text-align:left/right/center 也可以让img.input等有水平方向的对齐方式 2 垂直对齐方式 vertical-align:top ...

  7. Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag.

    https://blog.csdn.net/watermusicyes/article/details/44963773 Context中有一个startActivity方法,Activity继承自C ...

  8. 1.3.7、CDH 搭建Hadoop在安装之前(端口---第三方组件使用的端口)

    第三方组件使用的端口 在下表中,每个端口的“ 访问要求”列通常是“内部”或“外部”.在此上下文中,“内部”表示端口仅用于组件之间的通信; “外部”表示该端口可用于内部或外部通信. Component ...

  9. metasploit framework(十五):弱点扫描

    openvas扫描生成NBE格式的日志 改个比较好记的文件名 将日志导入到msf进行后续操作,导入之前查看一下hosts和services 导入nbe格式的文件 查看漏洞弱点 msf直接调用nessu ...

  10. 调试JS代码的神器

    1.火狐浏览器的 “Web开发者” 可以打断点,实时查看当前值 2.谷歌浏览器的“开发者工具” 可以打断点,实时查看当前值