我正在使用Jade作为我的Express powered node.js应用程序的模板引擎。也许是深夜,但我无法弄清楚在结果HTML中插入空style
元素的位置。
实例:http://quotation-mark.herokuapp.com/(注意<style type="text/css"></style>
末尾的head
?)
app.set('views', settings.projectDir + '/views');
app.set('view engine', 'jade');
app.set('view options', {layout: false});
<小时/> layout.jade
!!!html
include /helpers/css.jade
html(lang='ru')
head
meta(http-equiv='content-type', content='text/html; charset=utf-8')
noscript
meta(http-equiv="refresh", content="0; url=/noscript")
title= title
block css
mixin css('/css/bootstrap/bootstrap.css')
body
block content
<小时/> index.jade
extends layout
append content
h1= title
p Добро пожаловать в #{title}.
<小时/> 我已经检查了几次,但一切似乎都没问题(代码,模板,验证器)。不是线索......这应该发生吗?我错了吗?
即使模板本身没有head
,浏览器中也有一个(Chrome 19.0.1084.53),也许浏览器会添加一些东西?简单的HTML页面没有它:
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<style>h1{color:red;}</style>
</head>
<body>
<h1>Hi!</h1>
</body>
</html>
答案 0 :(得分:10)
您的服务器生成的HTML实际上并没有空<style>
块。
<!DOCTYPE html><html lang="ru">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<noscript><meta http-equiv="refresh" content="0; url=/noscript"></noscript>
<title>«Кавычки»</title>
<link rel="stylesheet" href="/css/style.css">
</head>
<body>
<h1>«Кавычки»</h1><p>Добро пожаловать в «Кавычки».</p>
</body>
</html>
您使用的是AdBlock等任何浏览器扩展程序吗?当AdBlock打开时,我在我访问的每个页面中看到空样式块。禁用扩展程序会使其消失。