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方式一览”

腾讯云轻量应用服务器关于多个实例套餐带宽

腾讯云轻量应用服务器又要免费升级配置了,之前已经免费升级过一次了(腾讯云轻量应用服务器套餐配置升级 轻量老用户专享免费升配!),这次在上次的基础上再次升级。也许这就是良心云吧,名不虚传。腾讯云怎么样?腾讯云好不好。腾讯云轻量应用服务器 Lighthouse 是一种易于使用和管理、适合承载轻量级业务负载的云服务器,能帮助个人和企业在云端快速构建网站、博客、电商、论坛等各类应用以及开发测试环境,并提供...

青果云(59元/月)香港多线BGP云服务器 1核 1G

青果云香港CN2_GIA主机测评青果云香港多线BGP网络,接入电信CN2 GIA等优质链路,测试IP:45.251.136.1青果网络QG.NET是一家高效多云管理服务商,拥有工信部颁发的全网云计算/CDN/IDC/ISP/IP-VPN等多项资质,是CNNIC/APNIC联盟的成员之一。青果云香港CN2_GIA主机性能分享下面和大家分享下。官方网站:点击进入CPU内存系统盘数据盘宽带ip价格购买地...

Dynadot COM特价新注册48元

想必我们有一些朋友应该陆续收到国内和国外的域名注册商关于域名即将涨价的信息。大概的意思是说从9月1日开始,.COM域名会涨价一点点,大约需要单个9.99美元左右一个。其实对于大部分用户来说也没多大的影响,毕竟如今什么都涨价,域名涨一点点也不要紧。如果是域名较多的话,确实增加续费成本和注册成本。今天整理看到Dynadot有发布新的八月份域名优惠活动,.COM首年注册依然是仅需48元,本次优惠活动截止...

csshack为你推荐
SCProute支持ipad支持ipad支持ipad支持ipad支持ipad支持ipad支持ipad责任编辑:纪春x-router设置路由器是我的上网设置是x怎么弄
1g虚拟主机 万网域名 免费二级域名 cn域名备案 域名解析服务器 阿里云搜索 linode日本 博客主机 permitrootlogin 网站保姆 美国php空间 css样式大全 debian7 刀片服务器的优势 tna官网 免费美国空间 hdd 1美金 搜索引擎提交入口 备案空间 更多