我在dashboard.jade中有一个include标签来包含我的header.jade文件,但是header.jade文件有自己的样式表,当我运行它时,dashboard.jade的样式表也适用于包含的header.jade。有没有办法让dashboard.jade的样式表只应用于它而不是包含的header.jade? p>
这是我的dashboard.jade代码:
doctype html
html
head
title Todo List
| 	
|
link(rel='stylesheet', type='text/css', href='assets/css/todos.css')
| 	
|
link(href='https://fonts.googleapis.com/css?family=Roboto:400,700,500', rel='stylesheet', type='text/css')
| 	
|
link(rel='stylesheet', type='text/css', href=' https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.6.3/css/font-awesome.css')
| 	
|
link(rel='stylesheet', href='//cdnjs.cloudflare.com/ajax/libs/lemonade/2.1.0/lemonade.min.css')
| 	
|
script(type='text/javascript', src='assets/plugins/jquery-3.0.0.min.js')
|
|
body
include partials/header
这是我的header.jade代码:
doctype html
html
head
title Eisenhower Productivity Tool
// Meta
meta(charset='utf-8')
|
meta(http-equiv='X-UA-Compatible', content='IE=edge')
|
meta(name='viewport', content='width=device-width, initial-scale=1.0')
|
meta(name='description', content='')
|
meta(name='author', content='')
|
|
link(rel='shortcut icon', href='../favicon.ico')
|
|
link(href='http://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800', rel='stylesheet', type='text/css')
// Global CSS
link(href='../assets/plugins/bootstrap/css/bootstrap.min.css', rel='stylesheet')
// Plugins CSS
link(rel='stylesheet', href='../assets/plugins/font-awesome/css/font-awesome.css')
// Theme CSS
link#theme-style(rel='stylesheet', href='assets/css/styles.css')
非常感谢任何帮助,谢谢!
答案 0 :(得分:0)
要使用不同的CSS-Stylesheets,我建议使用带有典型Jade / Pug block
语句的基于布局的环境。
这是基于布局的文件夹结构的外观:
|--./
|-- |--jade
|-- |-- |-- layouts
|-- |-- |-- |-- mylayout.jade
|-- |-- |-- template_1.jade
|-- |-- |-- template_2.jade
这可能是您的布局文件mylayout.jade
:
doctype html
block vars
// Some default variables
html
head
block head
// default head for title and meta
block defaultCSS
// default css
link(rel='stylesheet', type='text/css', href='path/to/default_style.css')
style.
body {}
block additionalCSS
body
block body
// default html in body
block footer
block defaultJS
script.
var someDefaltJavaScript = 'awsome"
这里有模板文件
template_1.jade
:
extends layout/mylayout.pug
block head
// this overrides the default "block head" from the layout
// So put your special meta for your page here
block additionalCSS
link(rel='stylesheet', type='text/css', href='path/to/other_style.css')
block body
.this
.is
#where
.your.content.goes
template_2.jade
:
extends layout/mylayout.pug
block head
// this overrides the default "block head" from the layout
// So put your special meta for your page here
//- We dont use the "block additionalCSS" because we dont need it in this template
block body
.this
.is
#where
.your.content.goes
注意只编译模板文件,这里有一些其他例子:http://jade-lang.com/reference/extends/。
您还可以在github上查看我的这个小玉器:h ttps://github.com/pure180/gulp-pug-inheritance-test/tree/master/app