我目前在一家大公司工作,为他们的高流量电子商务网站进行设计。我们支持数万名使用各种浏览器的用户。我们当前的浏览器统计数据表明大多数用户使用 Firefox 3+ 和 IE8。大约有5%的用户仍在使用IE6。
是时候开始为未来编码并在整个网站上实施 HTML5 了吗?这是负责任的做法还是我应该等待一年才能让人们升级到更好支持的浏览器?
谢谢。
I currently work for a large company and I design for their high-traffic ecommerce website. We support tens-of-thousands of users across a variety of browsers. Our current browser stats point to most people using either Firefox 3+ and IE8. There are about 5% of users still on IE6.
Is it time to start coding for the future and impliment HTML5 across the site? Is it a responsible thing to do or should I wait a year for people to upgrade to better supporting browsers?
Thank you.
发布评论
评论(5)
HTML5 并不是一个特定的东西。即使在不知道 HTML5 是什么的浏览器中,您也可以开始使用它。如果您刚刚开始使用一些额外的标签或表单类型,它们会在旧版浏览器中完美降级为标准元素。无论如何,视频都需要 Flash 后备。无论如何,高级脚本功能都需要针对不支持的浏览器进行回退,或者只能添加非必要的功能。
简而言之,当然,现在就开始使用 HTML5 技术来为尖端浏览器提供优势,只需确保它在旧版浏览器中能够很好地降级即可。
HTML5 isn't one specific thing. You can start using it even in browsers that have no idea what HTML5 is. If you just start using some of the extra tags or form types, they degrade perfectly into standard elements in older browsers. Video needs a Flash fallback anyway. The advanced scripting features all need fallbacks for non-supporting browsers anyway, or must only add non-essential functionality.
In short, sure, start using HTML5 techniques now to provide advantages for cutting-edge browsers, just make sure it all degrades nicely in older browsers.
IE8 不支持大部分 HTML5。
您可以使用一些库来使其更加了解 HTML5;但对于大型生产基地,我认为你最好等一年。
IE8 doesnt support most of HTML5.
There are libraries you can use to make it more HTML5 aware; but for a large production site I think your better of waiting a year.
我想说,仍然使用 IE6 的 5% 用户可能仍会继续使用 IE6。他们要么对升级不感兴趣(也许他们不知道这些事情),要么被工作场所的安全策略限制为 IE6。特别是,我发现我们的许多客户没有从 IE6 升级,因为他们的 IT 团队认为这是一个太大的变化,或者他们现有的软件与其他任何软件都不兼容。
因此,我的建议是:使用 HTML5。通过一些工作,您可以解决 IE6 的缺陷(请参阅 Modernizr、CSS3PIE 以获取想法)。这样,其他 95% 的客户就能获得更好的体验。
I would say that the 5% of users still on IE6 will probably remain on IE6. They either aren't interested in upgrading (perhaps they don't know about these things), or are restricted to IE6 by security policies in their workplace. In particular I've found that a number of our clients are not upgrading from IE6 because their IT teams consider it to be too big a change, or their existing software is not compatible with anything else.
Therefore, my advice is: go HTML5. With a bit of work you can work around IE6's deficiencies (look at Modernizr, CSS3PIE for ideas). And that way, the other 95% of customers get a better experience.
……什么是“大”?考虑到 HTML5 仍被认为是正在进行中的工作,我会投反对票。
... what is "large"? Considering HTML5 is still considered work in progress, I'd vote no.
目前大多数人倾向于使用“HTML5”这个名称来描述网络浏览器中所有令人兴奋的新功能。并非所有这些功能实际上都是 HTML5 规范的一部分 - 例如,CSS 和 Javascript 具有在 HTML5 旗帜下引用的新功能。我假设您指的是所有这些功能。
我的答案是调查您可以实现哪些功能,但保持向后兼容。 HTML5、CSS3 等的许多功能都可以添加到您的网站中,而不会使其无法在旧版浏览器中使用。
一些示例:(但请花时间研究更多)
新的输入类型,例如
和
这些为您提供了现代浏览器中的新功能,但旧浏览器仍会显示正常的输入字段。
更多信息:http://www.456bereastreet.com/archive/201004/html5_input_types/
语义 HTML5 标签,例如
一些 CSS3 功能,例如
border-radius
。 IE 不知道这一点,但结果是 IE 会有方角,而其他浏览器会有圆角。因此,对于 IE 用户来说,没有什么会破坏网站。但如果您确实愿意,可以使用 border-radius /www.css3pie.com/" rel="nofollow">CSS3Pie。
不要直接使用 SVG 图形,而是使用 Javascript 图形库,例如 Raphael,它将在浏览器中绘制 SVG支持它,并回退到 IE 的 VML(甚至可以在 IE6 中工作)。
显然,像
或
标签之类的东西在旧版浏览器中不起作用,但坦率地说,仅仅实现它就需要足够长的时间您可以立即使用的功能;当你准备好更进一步时,事情无论如何都会继续发展。
The name "HTML5" is tending to be used by most people at the moment to describe all the exciting new features in web browsers. Not all of these features are actually part of the HTML5 spec - for example, CSS and Javascript have new features which are being referred to under the HTML5 banner. I'm going to assume you mean all these features.
My answer would be to investigate which features you can implement, but remain backward-compatible. Many of the features of HTML5, CSS3, etc can be added to your site without making it un-usable for older browsers.
Some examples: (but do spend time researching for more)
New input types, such as
<input type='date'>
and<input type='number'>
These give you new features in a modern browser, but old browsers will still show a normal input field.
More info: http://www.456bereastreet.com/archive/201004/html5_input_types/
Semantic HTML5 tags, such as
<section>
,<footer>
, etc.These give you additional semantic meaning to your HTML tags, which is good for SEO and other automated systems that look at your site. They are broadly backward-compatible, though in order to support them in IE6/7/8, you will need to include an IE hack such as HTML5Shiv. However, I would suggest using Modernizr, which includes the HTML5Shiv plus a stack of other useful functionality.
Some CSS3 features such as
border-radius
. IE doesn't know about this, but the result is that IE will have square corners and other browsers will have rounded corners. So nothing that breaks the site for IE users.But if you really want to, IE can be made to support a number of CSS3 features, including
border-radius
, using tools such as CSS3Pie.Instead of using SVG graphics directly, use a Javascript graphics library such as Raphael, which will draw SVG in browsers that support it, and fall back to VML for IE (which will even work in IE6).
Obviously stuff like the
<video>
or<canvas>
tags aren't going to work in older browsers, but frankly, it'll take you long enough just implementing the features you can use straight away; by the time you're ready to take a step further, things will have moved on anyway.