windows xp 系统自动IE6, 后来直接安装了IE8。
placeholder 是HTML5的新属性,在做input 的预设值还挺方便的,但无奈IE8以下不支持,因此需要额外做fix。在实际使用中,却遇到了很多问题:
例如在官网查到的plugin:http://plugins.jquery.com/project/input-placeholder,就不支持type="password"的结果。因为仅改变value,对应password的显示方式
以下是我找到支持度最好地plugin:
DEMO: http://mathiasbynens.be/demo/placeholder
plugin: https://github.com/mathiasbynens/Placeholder-jQuery-Plugin
1、使用一个声明
你必须经常在HTML网页头部放置一个声明,推荐使用严格的标准。同时需要是IE6进入兼容模式,这已经足够兼容的了。
2、使用position: relative
设置一个标签position: relative可以解决很多问题,特别是曾经有过看不见的经历或者奇怪布局的框架。明显的,你需要小心,绝对位置放置的子元素是否都参照找到新位置。
3、为浮动元素使用display:inline
...要想更好的理解 css, 尤其是 IE 下对 css 的渲染,haslayout 是一个非常有必要彻底弄清除的概念。大多 IE
下的显示错误,就是源于 haslayout。
haslayout 是Windows Internet Explorer渲染引擎的一个内部组成部分。在Internet Explorer中,一个元素要么自己对自身的内容进行计算大小和组织,要么依赖于父元素来计算尺寸和组织内容。为了调节这两个不同的概念,渲染引擎采用了 hasLayout 的属性,属性值可以为true或false。当一个元素的 hasLayout 属性值为true时,我们说这个元素有一个布局(layout)
...
解决“引入JS文件IE6报错”的问题
问题描述:
页面引入一个js文件,其中定义了函数或对象,然后在页面中调用函数或对象时,在IE6会报“语法错误”或“缺少对象”。在IE6+或者IE7却运行正常。
问题分析:
这个对象在引入的JS文件中是存在的,因为在IE6+以上的浏览器都可以正常运行。这个问题在于文件编码上,如果JS文件编码与当前页面的编码不一致,就可能导致在IE6中页面不能正常获取和解析JS文件中的内容,在IE6中,默认引入的文件和页面的编码是一致的。在IE6+以上的浏览器中,一般浏览器会自动识别每个外部文件的编码并进行解析;
<STRO
上次一个九宫格的面试题,点击这里,本文是对九宫格另外的实现方法的探讨。
9个元素,每个50*50px,排成九宫格默认是border颜色为blue,hover到格子上变成red(兼容到IE6)
...
网上疯传了一道css面试题,题目是这样的:
9个元素,每个50*50px,排成九宫格
默认是border颜色为blue,hover到格子上变成red(兼容到IE6,考虑语义化的结构)
css效果
这道题目的重点和难点在于hover时候的效果,观察会发现相邻的两个格子需要共享同一条边。
...
问题描述:
在HTML文档里写上这段代码:...
<script type="text/javascript"> window['a'] = 'Hi'; </script>
<script type= "text/javascript" src="out.js"></script>
<script type="text/javascript"> alert(a); </script>
然后在out.js里写上这句: if(false ) { var a = 'Hello'; } 然后用FF和IE6分别运行,看看你得到什么。
在FF里会弹出“Hi”,但是在IE6中,会得到“undefined”。 很神奇吧?按语法,无论如何,a都不可能是undefined。但是IE6里就会。
如果把两个语句都写在同一个文件里,就不会有这个情况。 如果把out.js里改成window.a,或者把前一个改成var a,也不会有这个情况。 如果把out.js里的var a移到if语句之外,或是把if的条件改为true,也不会有这个情况。