HTML的条件注释和hack技术】的更多相关文章

在很多时候,前端的兼容性问题,都很让人头痛!幸运的是,微软从去年声明:从2016年1月12日起,微软将停止为IE8(包括IE8)提供技术支持和安全更新.整个前端圈子都沸腾起来,和今年七月份Adobe宣布计划终结 Flash一样,都是IT届的头等大喜事. 但针对一些还在用IE的人来说,或者一些故意刁难问IE兼容的HR来说,确实是个难题,这里列举一些兼容的方法 第一种,比较笨,但很有效果:条件注释 注释内容以样式为例,如下: 1.支持所有IE浏览器 <!--[if IE]> <link re…
在很多时候,前端的兼容性问题,都很让人头痛!幸运的是,微软从去年声明:从2016年1月12日起,微软将停止为IE8(包括IE8)提供技术支持和安全更新.整个前端圈子都沸腾起来,和今年七月份Adobe宣布计划终结 Flash一样,都是IT届的头等大喜事. 但针对一些还在用IE的人来说,或者一些故意刁难问IE兼容的HR来说,确实是个难题,这里列举一些兼容的方法 条件注释 HTML的hack代码模板: <!--[if IE 6]><p>只兼容IE6</p><![endi…
点评:ie10已经上线一段时间了,相信已经有一部分前端潮人体验过了,截至到现在,在ie6到ie9的浏览器各种各样的古怪行为,开发人员不得不使用条件注释,有条件的类,和其他特定于IE的css hack来解决 ie10已经上线一段时间了,相信已经有一部分前端潮人体验过了,但是针对ie10的css hack大家了解吗? 去年微软宣布,win8的Metro版IE10将不再支持插件,并且不再支持条件注释,这显然是一个冒险的举动.截至到现在,在ie6到ie9的浏览器各种各样的古怪行为,开发人员不得不使用条件…
通常WEB的好处就是可以跨平台,但这个世界偏偏有个另类,就是IE浏览器.在平常做HTML设计时,有时需要为IE的表示差异而不得不使用一些Hack手段.条件注释就是这类手段之一. 条件注释是IE浏览器的"专利",也就是说我们在HTML中可以为IE嵌入一段专有标签片段,来解决IE与其它浏览器的表现差异.条件注释是在IE5之后引入的,所有针对低于IE5(<IE5.0)以前的浏览器使用条件注释的做法都是无效的.同时请注意微软已经不再针对IE10及以上浏览器支持条件注释了,所以请不要针对&…
IE 条件注释判断语句是 IE 特有的功能,通过 HTML 注释中的条件语句能让不同的 IE 版本识别注释中的内容 自IE10起,标准模式不再支持条件注释 条件注释语句中可以是HTML.CSS也可以是JavaScript,空格和大写不要写错 1.只能被 IE 识别 <!--[if IE]> 只能被 IE 识别; <![endif]--> 2.IE6 <!--[if IE 6]> 这是ie6 <![endif]--> 3.IE7 <!--[if IE 7…
我最近想好好整理下csshack技术,但是结果很沮丧,下面我将我最初写的笔记和大家分享下. 我在单位整理的研究笔记: 不同的浏览器对某些CSS代码解析会存在一定的差异,因此就会导致不同浏览器下给用户展示的页面效果不一样,碰到这样的情况就需要开发人员通过针对不同的浏览器对应写出不同的CSS代码,从而达到兼容不同浏览器的目的,不会让页面因为浏览器的不同而产生有差异的显示,这种技术有个专门的名称就是CSS Hack. 在中国,这种差异主要是体现在主流浏览器上,我们只要解决了主流浏览器之间的CSS差异就…
Hack技术 1.IE条件注释法,微软官方推荐的hack方式. 只在IE下生效 <!--[if IE]> <link rel="stylesheet" href="/ie-all.css" type="text/css" media="screen" /> <![endif]--> 只在IE6下生效 <!--[if IE 6]> <link rel="styles…
最近经常看到类似这样的HTML代码片段,很多前端开发人员应该都熟悉: 1 <!--[if lt IE 7]>      <html class="ie6"> <![endif]-->2 <!--[if IE 7]>         <html class="ie7"> <![endif]-->3 <!--[if IE 8]>         <html class="…
一.什么是CSS Hack? 不同的浏览器对CSS的解析结果是不同的,因此会导致相同的CSS输出的页面效果不同,这就需要CSS Hack来解决浏览器局部的兼容性问题.而这个针对不同的浏览器写不同的CSS 代码的过程,就叫CSS Hack. CSS Hack常见的有三种形式:CSS属性Hack.CSS选择符Hack以及IE条件注释Hack, Hack主要针对IE浏览器. 1.属性级Hack:比如IE6能识别下划线"_"和星号" * ",IE7能识别星号" *…
前面的话 本文中所有IEx+代表包含x及x以上:IEx-代表包含x及x以下,仅个人习惯.例:IE7+代表IE7.IE8…… 本文中所有例子全部经过测试,欢迎交流. HTML识别 条件注释法(IE10+已经不支持条件注释) [注意]两个--和左中括号[之间不能有空格,否则无效 [1]IE9-(<!--[if IE]><![endif]-->) <!DOCTYPE html> <html lang="en"> <head> <…
CSS hack 由于不同厂商的浏览器,比如 Internet Explorer,Safari,Mozilla Firefox, Chrome 等,或者是同一厂商的浏览器的不同版本,如 IE6 和 IE7,对 CSS 的解析认识不完全一样,因此会导致生成的页面效果不一样,得不到我们所需要的页面效果.这个时候我们就需要针对不同的浏览器去写不同的 CSS,让它能够同时兼容不同的浏览器,这便是 CSS hack. 简单的说,CSS hack 的目的就是使你的 CSS 代码兼容不同的浏览器.当然,我们也…
一.什么是CSS Hack? 不同的浏览器对CSS的解析结果是不同的,因此会导致相同的CSS输出的页面效果不同,这就需要CSS Hack来解决浏览器局部的兼容性问题.而这个针对不同的浏览器写不同的CSS 代码的过程,就叫CSS Hack. CSS Hack常见的有三种形式:CSS属性Hack.CSS选择符Hack以及IE条件注释Hack, Hack主要针对IE浏览器. 1.属性级Hack:比如IE6能识别下划线"_"和星号" * ",IE7能识别星号" *…
一.通用区分方式:IE6.IE7能识别*,标准浏览器(如FF)不能识别*:IE6能识别*,但不能识别 !important:IE7能识别*,也能识别 !important:IE8能识别\0,不能识别*,+,_,* 加!important;FF不能识别*,但能识别 !important:例如style=”*width:10px!important; width:20px;”,其在IE7下宽度为10px,在IE6下宽度是20px.其中还有如下三种写法:第一种 width:100px; /* Fire…
本文翻译自此篇文章.翻译纯属业余. 许多网站为了确保他们的站点能够在不同的浏览器上有不同的显示效果而使用特征检测,一些传统的网站使用其他技术,诸如在服务器或客户端上使用脚本去检测浏览器类型.在这里我们引入比使用脚本检测浏览器更有优势的方法--条件注释.条件注释可以轻易地更早发现早期的IE版本.条件注释是层叠样式表(CSS)用于区分IE特定版本的首选方式. 重要提示 自IE10起,标准模式不再支持条件注释.而是采用特征检测给浏览器不支持的功能来提供备用策略.有关标准模式的详细信息,请参阅定义文档兼…
一.通用区分方式: IE6.IE7能识别*,标准浏览器(如FF)不能识别*:IE6能识别*,但不能识别 !important:IE7能识别*,也能识别 !important:IE8能识别\0,不能识别*,+,_,* 加!important;FF不能识别*,但能识别 !important:例如style=”*width:10px!important; width:20px;”,其在IE7下宽度为10px,在IE6下宽度是20px. 其中还有如下三种写法: 第一种 width:100px; /* F…
来源:http://www.ido321.com/938.html 一.什么是CSS Hack? 不同的浏览器对CSS的解析结果是不同的,因此会导致相同的CSS输出的页面效果不同,这就需要CSS Hack来解决浏览器局部的兼容性问题.而这个针对不同的浏览器写不同的CSS 代码的过程,就叫CSS Hack. CSS Hack常见的有三种形式:CSS属性Hack.CSS选择符Hack以及IE条件注释Hack, Hack主要针对IE浏览器. 1.属性级Hack:比如IE6能识别下划线”_”和星号” *…
最近又开始忙了,项目中又遇到了可恶的IE Hack问题,各种Hack的看着让自己都觉得恶心,于是决定改造一番. 首先请出条件注释语句: 之前用过的条件注释 <!--[if lt IE 7]><body class="ie6"><![endif]--> <!--[if IE 7]><body class="ie7"><![endif]--> <!--[if IE 8]><body…
ie6并不支持position:fixed, ie7+都支持fixed定位, ie6固定定位实现方法1: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <style> .top{ width:100px; height:100px; background:#ff8; border:1px solid #555; position:fixed; bottom:0;…
通过条件注释给html开始标签定义不同的class, 来区分不同版本的IE,可以在样式表中避免 样式属性hack (如 _margin-top, *float:none ) 注意: IE10+不支持条件注释 <!doctype html> <!--[if lt IE 7 ]>   <html class="ie ie6" lang="en">    <![endif]--> <!--[if IE 7 ]>…
HTML 条件注释(hack常用) IE条件注释是微软从IE5开始就提供的一种非标准逻辑语句,作用是可以灵活的为不同IE版本浏览器导入不同html元素.很显然这种方法的最大好处就在于属于微软官方给出的兼容解决办法而且还能通过W3C的效验 [识别IE] <!--[if IE]> <div class="box" id="box">只在IE中会显示</div> <![endif]--> [识别IE具体版本] 6 [if I…
在进行WEB标准网页的学习和应用过程中,网页对浏览器的兼容性是经常接触到的一个问题.其中因微软公司的Internet Explorer(简称IE)占据浏览器市场的大半江山,此外还有Firefox.Opera等.需要对这些浏览器进行兼容. 同时,单就IE而言,因IE版本的升级更替,目前浏览者使用的主要停留在 IE5(IE5.5).IE6和IE7这三个版本中.而这3个版本对于我们制作的WEB标准网页(XHTML+CSS)解释执行的显示状况不尽相同.并且,其他非IE浏览器与IE对某些CSS解释也不一样…
什么是CSS Hack? 不同的浏览器对CSS的解析结果是不同的,因此会导致相同的CSS输出的页面效果不同,这就需要CSS Hack来解决浏览器局部的兼容性问题.而这个针对不同的浏览器写不同的CSS 代码的过程,就叫CSS Hack. CSS Hack 形式 CSS Hack大致有3种表现形式:CSS属性Hack.CSS选择符Hack以及IE条件注释Hack, Hack主要针对IE浏览器. 1.属性级Hack:比如IE6能识别下划线"_"和星号" * ",IE7能识…
对于形形色色的浏览器,随之而来的就是一些兼容问题,大多应该都是IE下的兼容问题,因为任何浏览器下出现渲染不一致都极有可能是我们自己的结构或样式不符合W3C的某些要求,或者说违背了浏览器的某些规则而先造成的,所以我们应该尽量通过结构或CSS的修改来达到各浏览器渲染一致效果! 条件表达式(注:条件注释只能用在IE5-IE9,因为微软已经在IE10以后的版本中已禁用IE特有的条件注释功能,详情见:https://msdn.microsoft.com/zh-cn/library/ie/hh801214%…
最近的项目中,因为需要兼容IE7,IE8,IE9,解研究了IE的条件注释,顺手写下来备忘.  HTML中的IE条件注释 IE条件注释是一种特殊的HTML注释,这种注释只有IE5.0及以上版本才能理解.比如普通的HTML注释是: 简而言之,除了“Windows上的IE”之外的所有浏览器都会认为条件注释只是一段普通的HTML注释. 你不能在CSS代码中使用条件注释.IE条件注释是很有用的对IE隐藏或者展现特定代码的方法,比起在CSS中用诡异的_/制造bug,利用IE条件注释来写CSS “hacks”…
普通的HTML注释形式是 <!-- 注释 --> 而IE5~IE9这5个版本的IE浏览器还另外支持一种特殊的if条件注释(感觉有点类似模板渲染时的语法结构) <!--[if IE]> html语句 <![endif]--> 这样在处理IE浏览器兼容性问题的时候就可以把hack代码集中在一块了,或者其他意想不到的用途 if条件注释分为三种形式 1.是否IE(即:!) <!--[if IE]> html代码 <![endif]--> <!--[…
有话先说:本文的目的主要是向大家描述一下我们在遇见IE8版本一下以及Firefox兼容的问题. 针对不同的浏览器写不同的CSS的过程,这就叫CSS hack,也叫写CSS hack,相信您会对一些比较不易解决的兼容问题有一定的兴趣. 注意点: 网上很多资料中常常把!important也作为 个hack 段,其实这是 个误区.!important常常被我们 来更改样式, 不是兼容hack.造成这 个误区的原因是IE6在某些情况下不主动识别!important,以 于常常被 误 做识别IE6的hac…
openwrt-智能路由器hack技术(2)---"网路信息监控和窃取" 1   导读 PS:之前写的一个文章,现在发现结构内容排版不是太好,导致阅读体验太差,影响传播和SEO,所以现在整理拆分一下,从小处写起, 本系列介绍了两个关于智能路由器的hack技术,供大家赏玩一下. 本文主要介绍openwrt-智能路由器的数据监控功能.(为了维持本文一定的独立性,内容会有所重复). 前一文章: openwrt-智能路由器hack技术(1)---"DNS劫持" 2   概述…
openwrt-智能路由器hack技术(1)---"DNS劫持" 1   导读 PS:之前写的一个文章,现在发现结构内容排版不是太好,导致阅读体验太差,影响传播和SEO,所以现在整理拆分一下,从小处写起, 本系列介绍了两个关于智能路由器的hack技术,供大家赏玩一下. 本文提到的两个基于网络的hack技术: DNS劫持 数据抓包 基本本质上就是路由器设备的两个主要网络功能: 网关配置功能 网关数据中转功能 但是用于软件开发的正途,就变换成下面的说法: 网络环境迁移 数据监控 由于大家可…
IE条件注释是微软从IE5开始就提供的一种非标准逻辑语句,作用是可以灵活的为不同IE版本浏览器导入不同html元素,如:样式表,html标签等.很显然这种方法的最大好处就在于属于微软官方给出的兼容解决办法而且还能通过W3C的效验. 让我们举几个例子来看看: 1.只有IE才能识别  1: <!--[if IE]> 2: <link type="text/css" rel="stylesheet" href="my.css" /&g…
JScript中的条件注释详解-转载 这篇文章主要介绍了JScript中的条件注释详解,本文讲解了@cc_on.@if.@set.@_win32.@_win16.@_mac等条件注释语句及可用于条件编译的预定义变量,需要的朋友可以参考下   JScript 可以使用以下语句根据条件编译变量的值控制脚本的编译.既可以使用 JScript 提供的变量,也可以使用 @set 指令或 /define 命令行选项定义自己的变量. @cc_on    激活条件编译支持.   @if    根据表达式的值,有…