csshackcss常见的hack方法有哪些

csshack  时间:2021-02-19  阅读:()

CSS HACK什么意思,代表什么啊

什么是CSS hack( /css-hack/index.html)由于不同的浏览器,比如 Explorer 6, Explorer 7,Mozilla Firefox等,对CSS的解析认识不一样,因此会导致生成的页面效果不一样,得不到我们所需要的页面效果。

  这个时候我们就需要针对不同的浏览器去写不同的CSS,让它能够同时兼容不同的浏览器,能在不同的浏览器中也能得到我们想要的页面效果。

  这个针对不同的浏览器写不同的CSS code的过程,就叫CSS hack,也叫写CSS hack。

  CSS Hack的原理是什么   由于不同的浏览器对CSS的支持及解析结果不一样,还由于CSS中的优先级的关系。

我们就可以根据这个来针对不同的浏览器来写不同的CSS。

  比如 IE6能识别下划线"_"和星号" * ",IE7能识别星号" * ",但不能识别下划线"_",而firefox两个都不能认识。

等等   书写顺序,一般是将识别能力强的浏览器的CSS写在后面。

下面如何写里面说得更详细些。

  如何写CSS Hack   比如要分辨IE6和firefox两种浏览器,可以这样写:      我在IE6中看到是红色的,在firefox中看到是绿色的。

  解释一下:   上面的css在firefox中,它是认识不了后面的那个带星号的东东是什么的,于是将它过滤掉,不予理睬,解析得到的结果是:div{background:green},于是理所当然这个div的背景是绿色的。

  在IE6中呢,它两个background都能识别出来,它解析得到的结果是:div{background:green;background:red;},于是根据优先级别,处在后面的red的优先级高,于是当然这个div的背景颜色就是红色的了。

  CSS hack:区分IE6,IE7,firefox   区别不同浏览器,CSS hack写法:   区别IE6与FF:   background:orange;*background:blue;   区别IE6与IE7:   background:green !important;background:blue;   区别IE7与FF:   background:orange; *background:green;   区别FF,IE7,IE6:   background:orange;*background:green;_background:blue;   background:orange;*background:green !important;*background:blue;   注:IE都能识别*;标准浏览器(如FF)不能识别*;   IE6能识别*,但不能识别 !important,   IE7能识别*,也能识别!important;   FF不能识别*,但能识别!important;   IE6 IE7 FF   * √ √ ×   !important × √ √   浏览器优先级别:FFcss盒模型hack的另一选择是什么

css:

#box

{

width: 150px;

}

#box div {

border: 5px;

padding: 20px;

}

html:

...

这样一来在任何浏览器中盒的总宽度都将是150像素。

求IE6浏览器专用的css hack(即该部分语句只对IE6有效)

楼主说到的方法一: /* ie6 */ * html { 我找到的方法之一;这里加上 ,有什么好处?} /* end */ 一般不是你那个位置加的 ,不过我可以解释一下在那里加的好处: 本来/**/是构成注释块的,就是里面的内容全部不执行。

但ie6,以及windows ie6以下的浏览器不叫“聪明”,它解析到*/ 的时候,就以为解析完了,因此执行中间的的内容,所以,中间的*html{} 代码被执行。

但你这种用法比较作用比大,以为*html已经起到选择ie6浏览器的左右了。

其实""我们比较用的多是这样的。

.element{} 或者 .element{} 或者 .element{wi h:123px;} 这三个例子都系应用ie6不识别而运动代码。

下面给一个应用例子说明一下: .element{width:123px;} /*element的宽为123px,这个ie6 ie7 ff上面都表现为123px*/ .element{width:100px;} /*ie7 ff识别知道它是没用的符号,不赋予执行,而ie6当没出现,因此宽为100px,*/ 通过这个例子,我们就可以筛选出ie6了。

.element和.element{wi h:123px;}的应用同理。

不过建议不要使用来筛选ie6,因为在系统里面 这些都是有特别的意思的,呵呵,这里就不详细说明了,为了不出现不必要的麻烦,还是用著名的hack —— starHTML来筛选ie6吧。

starHTML就是我们经常用的*html{}了。

对于楼主提及的方法二: * html { 这就是IE6专用的?} 其实也可以说*html是ie6专用。

因为ie7已经修复了这个hack了。

至于为什么一定是*html而不是¥HTML @html 或者系其他呢?就要问微软的设计师为什么才知道了。

不过可以说说css的hack的原理吧。

CSS Hack的原理是由于不同的浏览器对CSS的支持及解析结果不一样,还由于CSS中的优先级的关系。

我们就可以根据这个来针对不同的浏览器来写不同的CSS。

举一个例子吧,希望通过这个例子,你可以感觉到*html这个hack的原理吧。

*+html{}是ie7的专属筛选hack。

为什么中间有个+号呢, 因为+是相邻选择符,相邻选择符ie6不支持,不过ie7支持,因此,就可以筛选出应用于ie7的语句了。

关于css hack,实在涉及的东西比较广,如果你有兴趣,可以联系一下我。

我怕我说了一堆话,看了也糊涂了,呵呵。

希望对你有帮助啦。

css常见的hack方法有哪些

CSS Hack大致有3种表现形式,CSS属性前缀法、选择器前缀法以及IE条件注释法(即HTML头部引用if IE)Hack,实际项目中CSS Hack大部分是针对IE浏览器不同版本之间的表现差异而引入的。

属性前缀法(即类内部Hack):例如 IE6能识别下划线"_"和星号" * ",IE7能识别星号" * ",但不能识别下划线"_",IE6~IE10都认识"9",但firefox前述三个都不能认识。

选择器前缀法(即选择器Hack):例如 IE6能识别*html .class{},IE7能识别*+html .class{}或者*:first-child+html .class{}。

IE条件注释法(即HTML条件注释Hack):针对所有IE(注:IE10+已经不再支持条件注释): <!--[if IE]>IE浏览器显示的内容 <![endif]-->,针对IE6及以下版本: <!--[if lt IE 6]>只在IE6-显示的内容 <![endif]-->。

这类Hack不仅对CSS生效,对写在判断语句里面的所有代码都会生效。

具体不展开,可看资料搜索“史上最全的CSS hack方式一览”

CloudCone 新增洛杉矶优化线路 年付17.99美元且简单线路测试

CloudCone 商家在以前的篇幅中也有多次介绍到,这个商家也蛮有意思的。以前一直只有洛杉矶MC机房,而且在功能上和Linode、DO、Vultr一样可以随时删除采用按时计费模式。但是,他们没有学到人家的精华部分,要这样的小时计费,一定要机房多才有优势,否则压根没有多大用途。这不最近CloudCone商家有点小变化,有新人洛杉矶优化线路,具体是什么优化的等会我测试看看线路。内存CPU硬盘流量价格...

云雀云(larkyun)低至368元/月,广州移动1Gbps带宽VDS(带100G防御),常州联通1Gbps带宽VDS

云雀云(larkyun)当前主要运作国内线路的机器,最大提供1Gbps服务器,有云服务器(VDS)、也有独立服务器,对接国内、国外的效果都是相当靠谱的。此外,还有台湾hinet线路的动态云服务器和静态云服务器。当前,larkyun对广州移动二期正在搞优惠促销!官方网站:https://larkyun.top付款方式:支付宝、微信、USDT广移二期开售8折折扣码:56NZVE0YZN (试用于常州联...

Dynadot多种后缀优惠域名优惠码 ,.COM域名注册$6.99

Dynadot 是一家非常靠谱的域名注册商家,老唐也从来不会掩饰对其的喜爱,目前我个人大部分域名都在 Dynadot,还有一小部分在 NameCheap 和腾讯云。本文分享一下 Dynadot 最新域名优惠码,包括 .COM,.NET 等主流后缀的优惠码,以及一些新顶级后缀的优惠。对于域名优惠,NameCheap 的新后缀促销比较多,而 Dynadot 则是对于主流后缀的促销比较多,所以可以各取所...

csshack为你推荐
支持ipad2.3ios5netbios端口26917 8000 4001 netbios-ns 端口 是干什么的ipad如何上网IPAD4怎样上网?127.0.0.1DNS老是被修改为127.0.0.1,这是为什么?用itunes备份如何用iTunes备份iPhone数据ms17-010win1038度古贝春珍藏10价格?icloudiphone怎么利用iCloud使iPhone内存达到扩容目的android5.1安卓N是什么东西??和普通的安卓系统(例如安卓5.1)有什么区别?bitchina怎么下载电影?
网站域名备案查询 香港主机 59.99美元 宕机监控 lamp配置 免费智能解析 腾讯总部在哪 中国linux 测试网速命令 网络速度 hdsky 贵州电信 镇江高防服务器 海外加速 阿里云宕机故障 压力测试工具 挂马检测工具 byebyelove kosskeb79 网易轻博客 更多