Rails初学者.
我在我的示例应用程序中编写CSS.我知道有Javascript代码可以帮助浏览器,即Internet Explorer,支持HTML5.
HTML5 Shim和HTML5 Shiv有什么区别?这是值得了解的吗?
http://html5shim.googlecode.com/svn/trunk/html5.js
http://html5shiv.googlecode.com/svn/trunk/html5.js
我的代码,你们都:
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js">
</script>
<![endif]-->
Run Code Online (Sandbox Code Playgroud) 使用Twitter Bootstrap实现Modernizr是否可以?
我目前正在使用带有Google的html5shiv的Bootstrap,我想知道我是否可以使用Modernizr,或者只是为了让老版IE浏览器激活HTML5元素而过度杀戮?
提前致谢
题
当使用的条件注释是针对IE8及以下时,html5shiv如何在IE9上工作并且Safari 4.x和Firefox 3.x读取IE 条件注释?如果没有html5shiv如何使用他们的Github指令中建议的条件评论在这些浏览器上工作?
[if lt IE 9]
这里有一个问题,询问是否可以在没有条件评论的每个浏览器中使用它以及副作用会是什么,但这不是我的问题.4年前问过这个问题.HTML5现在已成为标准配置,Microsoft不再提供对旧版浏览器的支持,因此在每个浏览器中加载它都会让人感到疯狂,我不会考虑这一点.我的问题与Github上的文档有关,html5shiv使用该文档开箱即用,以及如何使用它来支持它声称支持的浏览器.
在github上引用关于html5shiv脚本的自述文件:
"它还为IE6-9,Safari 4.x和FF 3.x的HTML5元素应用了基本样式."
用途:
<!--[if lt IE 9]>
<script src="bower_components/html5shiv/dist/html5shiv.js"></script>
<![endif]-->
Run Code Online (Sandbox Code Playgroud)
根据Stat Counter的数据,在过去的一年中,IE 8和9的总和已从全球使用量的4%左右降至约2%.自1月12日微软放弃对传统浏览器的支持以来,html5shiv似乎现在或将很快成为过去.看看这些传统的IE浏览器在未来一年中会下降多少将会很有趣.
但是,根据您正在开发的内容,您可能仍希望支持这些浏览器.当您在上述统计数据中包含Safari 4.x和Firefox 3时,html5shiv支持的浏览器共享总量为2.3%.对于大多数人来说什么都不是,但如果你拥有一个电子商务网站,2.3%可能是巨大的.
关于我的实际问题,我想我或者忽略了文档中的某些内容,或者对IE条件评论不够了解.
从逻辑上讲,我认为这将是最好的方法.IE中的条件注释通过版本5到9工作,因此我们不应该无理由地在IE5中加载脚本.
<!--[if !(IE 5)]>
<script src="bower_components/html5shiv/dist/html5shiv.js"></script>
<![endif]-->
Run Code Online (Sandbox Code Playgroud)
然而,在过去的5年里,我从未见过有人这样做,所以我显然错过了一些东西.另外,我仍然没有看到这对FF 3和Safari 4有什么用,除非有一个错误或什么导致他们不阅读评论.关于这个问题,我在html5shiv github上打开了这个主题,但是还没有得到答案.
HTML5shiv很容易在数百万个网站上使用,大多数开发人员和网站所有者认为它支持IE9 Safari 4和FF 3开箱即用.
另外,据我所知,就IE9而言,这就是html5shiv支持它的全部内容.
article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}
mark{background:#FF0;color:#000}
Run Code Online (Sandbox Code Playgroud)
如果这是真的,可能是许多人停止使用它的另一个原因,考虑到当你把它拿出来并将它包含在你的css(或css重置)中时,你的浏览器数量下降到1.39% …
javascript html5 internet-explorer twitter-bootstrap html5shiv
这个Shiv谷歌CDN链接不起作用.我该怎么办?
<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
Run Code Online (Sandbox Code Playgroud) 我在页面中使用以下HTML5元素:header,article,section和nav.现在我将所有上面的HTML5元素设置为display:block,并在标题中包含带有条件语句的HTML5 shiv:
<!--[if lt IE 9]>
<script src="dist/html5shiv.js"></script>
<![endif]-->
Run Code Online (Sandbox Code Playgroud)
该网站在IE7和IE8中运行良好 - 表明html5shiv确实在做它的魔力.但是当我在IE9中测试网站时,它缺乏HTML5元素内部所有内容的样式.
只要我将条件语句更改为:
<!--[if IE]>
<script src="dist/html5shiv.js"></script>
<![endif]-->
Run Code Online (Sandbox Code Playgroud)
html5元素及其子元素现在可以应用正确的样式.我仔细检查了我的IE版本,它说我有IE版本9.0.8112.16421.
我还要提一下,这些站点是用PHP构建的,并通过使用PEAR的Cache_Lite进行缓存.但是,在一个简单的静态html页面上完成的测试为我提供了相同的结果.
有任何想法吗??
我无法在IE8中使用HTML5元素获取样式.我已经搜索了stackoverflow和Google,没有任何建议我尝试过工作.
我开始使用更精细的页面(我将XHTML框架转换为HTML5)并且没有丝毫关注,但是在看到模拟和F12 IE8标准模式IE的结果为零之后...这里是简单的代码我可以工作:
<!doctype html>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta charset="UTF-8" />
<title>Template</title>
<style type="text/css">
header {
display: block;
border:1px solid red;
}
</style>
</head>
<body>
<header>
HTML5 HEADER
</header>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
请帮助欧比旺,你是我唯一的希望.
想象一下,我想在我的网站上使用angular.js和html5shiv等插件.我现在可以使用bower将这些软件包与这些软件包中的所有不必要的文件一起安装,或者我可以简单地包含来自Google或Cloudflare的cdn托管文件.那么有人可以告诉我将所有必要的插件添加到bower.json然后必须手动从我需要包含在我的HTML文件中的包中获取.js文件的优点.是不是更复杂和资源消耗?
例如:我为什么要添加angular.js到bower.json,让它下载整个角包,包括Gruntfile,所有的依赖关系和资产(9MB!)和等,而不是增加一个一行到我的HTML文件.
什么时候才能使用Bower?我看到的唯一优势是其他开发人员可以看到项目的依赖关系......
有没有人知道是否有像CSS3的HTML5 shiv这样的插件允许在IE9之前在浏览器版本中重写和正确渲染CSS3?
我是响应式设计界的新手.
我在我的设计中使用http://www.responsivegridsystem.com/.它告诉我添加以下标记
<!--[if lt IE 9]>
<script src="//html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<!-- All JavaScript at the bottom, except for Modernizr which enables HTML5 elements and feature detects -->
<script src="vendors/responsive/js/modernizr-2.5.3-min.js"></script>
Run Code Online (Sandbox Code Playgroud)
由于媒体查询在IE8中不起作用,根据IE7的这个问题,IE8支持css3媒体查询我也使用以下标记
<!--[if lt IE 9]>
<script src="//css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script>
<![endif]-->
Run Code Online (Sandbox Code Playgroud)
这些都需要吗?什么是html5shim,modernizr和css3mediaqueiries之间的区别?
我需要使用modernizr吗?因为我在js文件中没有做任何事情,比如jQuery.