我注意到Facebook这样做,他们<noscript>在<head>标签中包含了一个元刷新.他们使用它来检测用户代理是否启用了javascript.
我们考虑使用这种方法有两个原因:
出于上述原因使用此方法是否会导致影响大部分用户代理的任何不利影响?
当浏览我的网站与谷歌浏览器的最新版本,并使用F12寻找到的来源,所有的内容之间<head>,并</head>显示为空.在最新版本的Firefox和IE上,一切都是正确的.
实际上,内容会在Google Chrome上移动到正文中.
这显然不是CSS问题.我正在使用Twitter Bootstrap CSS和JS,以及一个MVC PHP框架.有人有提示吗?
这是我的document.html页面:
<!DOCTYPE html>
<html lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title><?php echo (Template::$titre); ?></title>
<?php foreach(Template::$meta as $key=>$value): ?>
<meta name="<?php echo $key; ?>" content="<?php echo $value; ?>" />
<?php endforeach; ?>
<link rel="shortcut icon" href="<?php echo WEB; ?>assets/style/favicon.ico" type="image/x-icon" />
<link rel="stylesheet" href="<?php echo WEB; ?>assets/style/bootstrap.min.css" />
<link rel="stylesheet" href="<?php echo WEB; ?>assets/style/bootstrap-responsive.min.css" />
<link rel="stylesheet" href="<?php echo WEB; …Run Code Online (Sandbox Code Playgroud) 我把它放在我的头部.它出现在浏览器的页面源中.
<meta http-equiv="Cache-Control" content="max-age=1209600">
Run Code Online (Sandbox Code Playgroud)
但是,当我查看Chrome扩展程序时Live HTTP Headers,它会显示以下内容.
Cache-Control: max-age=0
Content-Encoding: gzip
Content-Length: 5849
Content-Type: text/html; charset=utf-8
Date: Sat, 05 Apr 2014 04:29:16 GMT
Expires: Sat, 05 Apr 2014 04:29:16 GMT
Last-Modified: Sat, 05 Apr 2014 03:33:19 GMT
Run Code Online (Sandbox Code Playgroud)
该max-age未登记.我已经清空了浏览器缓存,但它没有任何区别.
有什么解释吗?顺便说一句,这是该网站.
更新:
Firebug同样记录Cache-Control: max-age=0.
谷歌在这里也说明了max-age覆盖Expires标题(我没有设置),你不需要两者.
我正在学习React,并且(更重要的是)试图了解反应是如何实际运作的.
我有一些生成的CSS,我想作为样式元素追加到头部.在js land中,这将是:
const $style = document.createElement("style");
document.head.appendChild($style);
const randBlue = ~~(Math.random() * 250);
$style.innerHtml = `body { color: rgb(10, 10, ${randBlue}); }`;
Run Code Online (Sandbox Code Playgroud)
不幸的是,在React的土地上,事情在这方面似乎不太直白.我对此的理解是,将所有样式添加到willy nilly是不好的做法,因为有足够的人做这件事会导致问题.我也认识到大多数人都使用样式组件,魅力四射,样式化的jsx,或内联生成的CSS,因为它们可以避免上述威利猥亵可能产生的许多问题.
但我不想使用我不了解的模块,据我所知,上面的大多数创建样式元素并以某种方式将它们添加到头部,我想知道如何.
所以,如果我在React中并且有一些生成的css文本:
const randomColor = Math.random() > 0.5 ? "red" : "blue";
const generatedCss = `body { color: ${randomColor}; }`;
Run Code Online (Sandbox Code Playgroud)
这里有什么?
createStyleElementAndAppendToHead(generatedCss) {
// mystery code
};
Run Code Online (Sandbox Code Playgroud) 我正在使用CMS,显然它有一个错误,不允许我添加任何内容到<head>博客文章.它将所有内容都插入到主体中,在大多数情况下它可以正常工作,但是在这样的代码实例中:
<style type="text/css">
.slideshow img { display: none }
.slideshow img.first { display: block }
</style>
Run Code Online (Sandbox Code Playgroud)
如果将这种类型的代码放在<body>所有主流浏览器的标签中,它们会运行吗?(IE8 +,Firefox,Chrome和Safari.)通常情况下,它总是在<head>页面中.
注意:这似乎适用于FF 15,但我不确定其他浏览器.
关于以下代码在<head>网站部分是否有效,我想提供一些建议:
<noscript><img src="http://bux1le001.com/images/track/26351.png?trk_user=26351&trk_tit=jsdisabled&trk_ref=jsdisabled&trk_loc=jsdisabled" height="0px" width="0px" style="display:none;" /></noscript>
Run Code Online (Sandbox Code Playgroud)
我被要求将它添加到我照顾的网站,但据我所知,这意味着如果禁用JavaScript它会显示一个图像来警告用户,但如果我把它放在该<head>部分它将无法正常工作会吗?
我想了解如何<base href="" />为我的网络爬虫使用一个值,所以我测试了几个主要浏览器的组合,最后发现了一些我不明白的双斜线.
如果您不喜欢阅读所有内容,请跳转到D和E的测试结果.所有测试的演示:http:
//gutt.it/basehref.php
我的测试结果一步一步调用http://example.com/images.html:
A - 多个基数href
<html>
<head>
<base target="_blank" />
<base href="http://example.com/images/" />
<base href="http://example.com/" />
</head>
<body>
<img src="/images/image.jpg">
<img src="image.jpg">
<img src="./image.jpg">
<img src="images/image.jpg"> not found
<img src="/image.jpg"> not found
<img src="../image.jpg"> not found
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
结论
<base>有href计数/目标根开始的源../ 去一个文件夹 B - 没有斜线
<html>
<head>
<base href="http://example.com/images" />
</head>
<body>
<img src="/images/image.jpg">
<img src="image.jpg"> not found
<img …Run Code Online (Sandbox Code Playgroud) 两者之间是否存在有效差异?
<style type="text/css">@import url(/css/layout.css) all;</style>
Run Code Online (Sandbox Code Playgroud)
和
<link href="/css/layout.css" type="text/css" static="all" rel="stylesheet">
Run Code Online (Sandbox Code Playgroud)
浏览器的行为有何不同?
从w3c等推荐什么?
我正试图通过W3C验证器传递一个页面.站点地图上的验证失败,我包括这样:
<link rel="sitemap" type="application/xml" title="Sitemap" href="../sitemap.xml" />
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
元素链接上属性rel的错误值站点地图:不是绝对IRI.字符串站点地图不是注册关键字或绝对URL.
我一直在努力修复它,但我正在尝试的任何东西似乎都没有用,加上这是Google和Html5 Boilerplate推荐的布局.
我的语法有什么问题吗?似乎是正确的,但为什么不通过?
我想做一个像plunker一样的游乐场.我刚刚注意到一个非常奇怪的生产行为(使用active modeCloudflare),而它的效果很好localhost.
通过iframe,操场预览index_internal.html可能包含链接到其他文件(例如,.html,.js,.css).iframe能够解释外部链接,如<script src="script.js"></script>.
因此,每当用户script.js在编辑器上修改他们的文件(例如)时,我的程序会将新文件保存到服务器上的临时文件夹中,然后刷新iframe iframe.src = iframe.src,它运行良好localhost.
但是,我意识到,在生产中,浏览器始终保持加载初始化 script.js,即使用户在编辑器中修改它并且在服务器的文件夹中写入了新版本.例如,我看到的Dev Tools ==> Network始终是初始版本script.js,而我可以script.js通过less左侧检查服务器中保存的新版本.
有谁知道为什么会这样?以及如何解决它?
编辑1:
我尝试了以下,但没有用script.js:
var iframe = document.getElementById('myiframe');
iframe.contentWindow.location.reload(true);
iframe.contentDocument.location.reload(true);
iframe.contentWindow.location.href = iframe.contentWindow.location.href
iframe.contentWindow.src = iframe.contentWindow.src
iframe.contentWindow.location.replace(iframe.contentWindow.location.href)
Run Code Online (Sandbox Code Playgroud)
我试图添加一个版本,它可以使用index_internal.html,但没有重新加载script.js:
var newSrc = iframe.src.split('?')[0]
iframe.src = newSrc + "?uid=" + Math.floor((Math.random() …Run Code Online (Sandbox Code Playgroud) html-head ×10
html ×7
css ×4
meta-tags ×2
noscript ×2
caching ×1
cloudflare ×1
http-headers ×1
iframe ×1
javascript ×1
php ×1
reactjs ×1
sitemap ×1