`

IE web开发相关针对IE10的CSS Hack(User-agent方法)

 
阅读更多
http://www.iefans.net/ie10-css-hack-user-agent/  引用地址

在IE6/IE7/IE8的时候,为了解决网页在IE浏览器下的兼容性,我们会经常用到针对IE浏览器的条件注释来解决问题。延续这个思维模式,当我们发现页面在IE10中表现不正常了,又不能忽略不管,所以有些人惯性思维想到的方法就是针对IE10写一个条件注释。值得高兴的是,在IE10里已无需使用条件注释。

如果我想针对IE10单独定义一个CSS样式,这个应该如何解决呢?

对此,国外开发者Roge在前段时间提出了一个非常简单地想法,并且能够很好地工作。那就是利用User-agent的方式实现针对IE10的CSS Hack。

JavaScript

var doc = document.documentElement;

doc.setAttribute('data-useragent', navigator.userAgent);
IE10用户代理字符串

Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)
HTML

CSS样式

html[data-useragent*='MSIE 10.0'] h1 {

  color: blue;

}
示例

HTML代码:

在IE10浏览器中打开是蓝色的,其他浏览器则是别的颜色。
CSS代码:

html[data-useragent*='MSIE 10.0'] strong {

  color: blue;

}

strong {

  text-align: center;

  padding: 20px;

}
JavaScript代码:

var b = document.documentElement;

b.setAttribute('data-useragent',navigator.userAgent);

b.setAttribute('data-platform', navigator.platform );

// IE 10 == Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0).
结果:

IE10 CSS Hack  测试结果

如果你是一个前端开发人员的话,正确的了解和使用CSS Hack是一个必须的技能。相信作为前端开发的你,一定需要把这个方法添加到你的开发书签中噢!

版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
文章引用地址:http://www.iefans.net/ie10-css-hack-user-agent/ 作者:ief
分享到:
评论

相关推荐

    巧用 UserAgent 代替拙劣的 CSS hack

    标题“巧用 UserAgent 代替拙劣的 CSS hack”指出了一种避免使用CSS hack,转而利用UserAgent来实现特定浏览器兼容性的方法。CSS hack常常导致代码可维护性下降,而通过UserAgent判断,我们可以更加优雅地处理浏览器...

    CSS or PHP判断浏览器源代码

    2. **CSS Hack**: 由于不同浏览器对CSS语法的支持度不同,开发者有时会使用CSS hack来针对特定浏览器。例如,IE6不支持`:hover`应用于非链接元素,但其他现代浏览器支持。你可以利用这一点来区分IE6和其他浏览器。 ...

    ie chrome firefox 兼容

    其中, userAgent 属性是 navigator 对象的一个属性方法,可以返回由客户机发送服务器的 user-agent 头部的值。该值是一个字符串,包含了浏览器的类型和版本信息。 在上面的代码中,我们可以看到使用了 userAgent ...

    针对各种版本的浏览器隐藏CSS的九大技巧

    在IT行业的前端开发领域,尤其是网页设计与布局中,CSS(层叠样式表)作为三大核心之一,扮演着至关重要的角色。它不仅负责定义网页的外观,还涉及到跨浏览器兼容性的问题。对于开发者而言,了解如何针对不同版本的...

    前端项目-cssuseragent.zip

    在前端开发领域,用户代理(User Agent)是一个至关重要的概念,尤其在针对不同浏览器和设备进行适配时。用户代理是浏览器发送到服务器的一个字符串,它包含了关于浏览器类型、版本、操作系统等信息。这个字符串可以...

    IE

    4. **CSS hack**:由于IE对CSS的解析与其他浏览器有所不同,开发者可能需要使用特定的CSS hack来修正布局问题,例如`_width`、`*width`等。 5. **JavaScript兼容性**:学习如何使用`feature detection`而非`browser...

    Chrome插件开发

    1. **HTTP请求头**:理解HTTP协议中的请求头,如User-Agent、Cookie、Authorization等,以及它们在浏览器和服务器间通信中的作用。 2. **chrome.webRequest API**:这个API允许插件在请求发出之前或之后进行拦截,...

    WEB前端设计师常用工具集锦

    7. CSS hack表:了解针对不同浏览器的CSS修复技巧。 8. 浏览器市场份额:通过百度统计等数据,了解用户使用的浏览器分布。 9. 测试浏览器支持CSS3情况:如CSS3test.com,检查浏览器对CSS3特性的支持程度。 10. ...

    编写可维护的javascript(英文)

    本书《编写可维护的JavaScript》是软件开发领域的经典之作,由Web技术专家Nicholas C. Zakas撰写,他在书中分享了在团队开发环境下编写可维护JavaScript代码的秘诀。本书的目标受众包括前端开发工程师、JavaScript...

    抓取新浪的新闻项目 简单实例

    8. **反爬策略与应对**:新浪等大型网站通常会设置反爬机制,如IP限制、User-Agent检测等。我们需要适当地设置延时、更换User-Agent、使用代理IP等方式来规避这些限制。 9. **爬虫伦理与法规**:在进行网络爬虫时,...

    编写可维护的JavaScript(中文)

    12.1 User-Agent检测 12.2 特性检测 12.3 避免特性推断 12.4 避免浏览器推断 12.5 应当如何取舍 第三部分 自动化 第13章 文件和目录结构 13.1 最佳实践 13.2 基本结构 第14章 Ant 14.1 安装 14.2 配置...

    规范化:Utilizando将浏览器规范化为不同的浏览器配置

    - 使用Feature Detection(特性检测)而不是User-Agent sniffing(用户代理嗅探)来确定浏览器的功能支持情况,例如使用Modernizr库。 - 确保JavaScript代码符合ESLint等代码风格检查工具的规则,保证代码一致性。...

    用python写网络爬虫

    除了基本的爬虫编写,我们还需要考虑一些高级话题,如反爬机制处理(如User-Agent、Cookies、Session)、异步请求(使用`asyncio`和`aiohttp`库)、数据存储(CSV、JSON、数据库等)、分布式爬虫(使用Scrapy-Redis...

Global site tag (gtag.js) - Google Analytics