IE6图片修复&条件Hack&属性Hack&选择Hack

解决IE6图片修复:
在IE6中对图片格式png24支持度不高,如果使用的图片格式是png24,则会导致透明效果无法正常显示

解决方法:

1.可以使用png8来代替png24,即可解决问题,但是使用png8代替png24以后,图片的清晰图会有所下降

2.使用JavaScript来解决该问题,需要向页面中引入一个外部的JavaScript文件,然后在写一下简单的JS代码,来处理该问题

<!-- 在body标签的最后引入外部的JS文件 -->

<!--再创建一个新的script标签,并且编写一些js代码 -->

<!-- 以下代码只会在IE6中执行,其他浏览器中无效 -->

<!--[if IE 6]>

<script type="text/javascript" src="js/DD_belatedPNG_0.0.8a-min.js"></script>

<script type="text/javascript">

DD_belatedPNG.fix("div,img");

</script>

<![endif]-->




条件Hack;

有一些情况,有一些特殊的代码我们只需要在某些特殊的浏览器中执行,而在其他的浏览器中不需要执行,这时就可以使用CSS Hack来解决该问题

CSS Hack实际上指的是一种特殊的代码,这段代码只在某些浏览器中可以识别,而其他浏览器不能识别,通过这种方式,来为一些浏览器设置特殊的代码

#:条件Hack

它只对IE浏览器有效,其它的浏览器都会将它识别为注释

IE10及以上的浏览器已经不支持这种方式

格式:

<!-- 以下内容只会出现在IE6中 -->

<!--[if IE 6]>

<p>为了您和家人的健康,请远离IE6!!</p>

<![endif]-->

<!--[if IE 8]>

<p>当前浏览器是IE8!!</p>

<![endif]-->

<!--[if lt IE 9]>

<p>该标签会在IE9以下的浏览器中显示</p>

<![endif]-->

<!--[if gte IE 9]>

<p>该标签会在IE9及以上的浏览器中显示</p>

<![endif]-->

<!--[if lte IE 9]>

<p>该标签会在IE9及以下的浏览器中显示</p>

<![endif]-->

<!--[if ! IE 6]>

<p>你的浏览器不是IE6</p>

<![endif]-->



属性Hack;

<head>

<meta charset="UTF-8">

<title>属性Hack</title>

<style type="text/css">

body{

background-color: #bfa;

/*

假设在IE6中需要将背景颜色设置为黄色才能达到和其它浏览器相同的效果

*/

/*

希望黄色背景只在IE6中生效

在样式前添加一个下划线,则该样式只有IE6及以下的浏览器才可以识别

*/

/*_background-color: yellow;*/

/*添加了*的样式只有IE7及以下的浏览器认识*/

/**background-color: yellow;*/

/*在样式最后添加一个\0,则只有IE8及以上的浏览器才能识别*/

/*background-color: yellow\0;*/

/*

CSS Hack不到万不得已的情况尽量不要使用

*/

}

</style>

</head>



选择Hack:
<head>

<meta charset="UTF-8">

<title>选择符</title>

<style type="text/css">

/*

在选择器前添加* html 则该选择器只有IE6可以识别

*/

* html body{

background-color: #bfa;

}

</style>

</head>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,736评论 1 45
  • 条件Hack 实际情况,我们所用的浏览器各不相同,且版本也不一样,对于一些特殊代码,我们只需要在某些特殊浏览器中执...
    宁que阅读 460评论 0 0
  • 做前端多年,虽然不是经常需要hack,但是我们经常会遇到各浏览器表现不一致的情况。基于此,某些情况我们会极不情愿的...
    大女表哥阅读 1,131评论 0 9
  • 做前端,总会涉及到浏览器兼容的问题,之所以存在浏览器兼容的问题,是因为各个浏览器的内核不同,相对应的同一套代码,不...
    一简行者阅读 568评论 0 0
  • 前端开发面试知识点大纲: HTML&CSS: 对Web标准的理解、浏览器内核差异、兼容性、hack、CSS基本功:...
    秀才JaneBook阅读 2,540评论 0 25