前端面试集锦(二)特殊的判定ie浏览器方式-条件注释
来源:互联网 发布:激光眼睛副作用知乎 编辑:程序博客网 时间:2024/06/04 17:47
本文为H5EDU机构官方的HTML5培训教程,
HTML基础教程HTML的条件注释在IE5中被首次引入,直到IE9.一直都是简单地判定用户浏览器(IE,非IE,IE版本)的一种手段,而在IE10的标准模式下,条件注释功能被停止支持(兼容性视图下继续有效)!
IE条件注释是一种特殊的HTML注释,这种注释只有IE5.0及以上版本才能理解。比如普通的HTML注释是:<!--This is a comment-->
而只有IE可读的IE条件注释是:<!--[if IE]> <![endif]-->
“非IE条件注释”:<!--[if !IE]>--> non-IE HTML Code <!--<![endif]-->“
非特定版本IE条件注释”(很少用到):<!--[if ! lt IE 7]><![IGNORE[--><![IGNORE[]]>Code for browsers that match the if condition<!--<![endif]-->
简而言之,除了“IE”之外的所有浏览器都会认为条件注释只是一段普通的HTML注释。你不能在CSS代码中使用条件注释。
通俗点,条件注释就是一些if判断,但这些判断不是在脚本里执行的,而是直接在html代码里执行的。
条件注释的基本结构和HTML的注释(<!– –>)是一样的。因此IE以外的浏览器将会把它们看作是普通的注释而完全忽略它们。
IE将会根据if条件来判断是否如解析普通的页面内容一样解析条件注释里的内容。
条件注释使用的是HTML的注释结构,因此他们只能使用在HTML文件里,而不能在CSS文件中使用。
从语法上看这是相当合法的普通HTML注释。任何浏览器都会认为<!–和–>之间的部分是注释从而忽略它。但是IE也会看到其中[if IE]>,从而开始解释接下来的代码直到遇到<![endif]。所以,下面这些代码不会显示在任何其他浏览器中面。
通过“比较操作符”可以更灵活地对IE版本进行控制,用法是在IE前面加上“比较操作符”。合法的操作符如下:
lte:就是Less than or equal to的简写,也就是小于或等于的意思。
lt :就是Less than的简写,也就是小于的意思。
gte:就是Greater than or equal to的简写,也就是大于或等于的意思。
gt :就是Greater than的简写,也就是大于的意思。
! :就是不等于的意思,跟javascript里的不等于判断符相同
示例:
<!–[if gt IE 5.5]> / 如果IE版本大于5.5 /
<!–[if lte IE 6]> / 如果IE版本小于等于6 /
<!–[if !IE]> / 如果浏览器不是IE /
虽然看上去当你第一次使用条件注释的时候会更费时,但当你以后调试你的CSS的时候,就会发现非常方便。用条件注释你只需要写一遍HTML注释,而用bug你需要为每一条规则都写上又长又丑的代码,而且还经常是为了改变其他的hacks而写的hacks。除此之外条件注释对于不支持它的任何浏览器而言都是合法的HTML注释。
- 前端面试集锦(二)特殊的判定ie浏览器方式-条件注释
- IE浏览器条件注释
- IE 浏览器 条件注释
- 关于ie浏览器的条件注释
- 条件注释解决ie浏览器的兼容性问题
- IE的条件注释判断浏览器类别
- 条件注释判断IE浏览器
- IE 浏览器条件注释详解(html中的注释)
- IE浏览器条件注释if IE详解
- ie浏览器条件注释--确定浏览器版本
- ##IE兼容##条件注释判断浏览器类型
- 条件注释判断浏览器<[if IE]>
- 条件注释判断IE浏览器版本
- css 条件注释区分非IE浏览器
- css 条件注释区分非IE浏览器
- 条件注释区分非IE浏览器
- IE条件注释 解决浏览器兼容问题
- 条件注释判断IE浏览器,<!--[if IE]>条件注释区分非IE浏览器
- POJ 3667 Hotel (线段树 区间更新查找)
- 你必须知道的简单实用的 Ubuntu 快捷键
- Codeforces Round #367 (Div. 2) 十字链表
- 【算法】创新工场涂鸦移动2017校园招聘测试题-A卷-软件工程师
- HLSL的内置函数
- 前端面试集锦(二)特殊的判定ie浏览器方式-条件注释
- ffmpeg安装教程
- 判断回文数 (Palindrome Number<from LeetCode>)
- OpenCV学习笔记(一)——旋转向量与旋转矩阵相互转化
- zookeeper 各节点数据保证是弱一致性
- 剑指offer面试题——丑数
- 【PAT甲级】【C】1001. A+B Format (20)
- POJ2104 K-th Number (划分树模板)
- Java虚拟机(四)——对象的创建、存储和定位