study
前两天认识了个新玩意-noscript,做前端的兄弟姐妹应该都知道这个标签吧?
什么?你也不知道?
挺好的,因为这是个挺古老但是又很重要的标签。
为啥会知道这玩意呢?作为一个phper,避免不了要亲自上手写点页面或者js啥的,正好pm要我看下GTM这玩意怎么有重复的,一看代码,之前的老哥在header和footer都添加了这玩意,然后还有两个noscript,于是删除的时候,顺手把重复的noscript删了,结果一看,这不行啊,删多了,遂看看noscript是干啥的?
哦,还真不能删。
noscript标签是一个相当古老的标签,因为早期的浏览器不能够支持 JavaScript。noscript 标签在不支持JavaScript 的浏览器中用来显示要替代的内容。这个nocript元素可以包含任何的 HTML 元素。它的用法很简单,如下:
代码语言:javascript复制<noscript>
<p>You need to enable JavaScript to run this app./(本页面需要浏览器启用或者说支持JavaScript)</p>
</noscript>
1.浏览器不支持脚本的时候
2.浏览器支持脚本,但是脚本被无情的禁用了
【注】在这两种情况下,nocript标签就派上用场啦,该标签中的内容会被显示出来,提示用户的浏览器已经禁用脚本,来达到更好的用户体验。
NoScript的默认行为是阻止所有不在白名单中的脚本。这可能使大量依赖于JavaScript技术,例如AJAX的页面无法正常工作。不熟悉的用户也许会觉得相比起增加的安全保护,这样的行为威力太大,没必要甚至令人厌烦。但同时NoScript也支持一个可选的黑名单模式:用户可以选择全局启用JavaScript然后禁止他们不信任的站点。即便如此配置,NoScript仍然能在很大程度上增强安全性,由于XSS, CSRF和Clickjacking的防护仍然可以起作用。
HTML 4.01 与 HTML5之间的差异
在 HTML 4.01 中,<noscript> 标签只允许插入到 <body> 标签中。 [1]
在 HTML5 中,<noscript> 标签可以插入到 <head> 和 <body> 标签中。
ok,mark一下,下次删除之前先看看啥用途,不然就糗大了~