当前位置 : 主页 > 网页制作 > Nodejs >

pug – 如何使用Jade插入多个条件注释?

来源:互联网 收集:自由互联 发布时间:2021-06-16
在 Jade中,如何插入多个条件注释,如下所示? !-- Foundation 3 for IE 8 and earlier --!--[if lt IE 9] link rel="stylesheet" href="/css/foundation3/normalize.css" link rel="stylesheet" href="/css/foundation3/foundation.css" link
在 Jade中,如何插入多个条件注释,如下所示?

<!-- Foundation 3 for IE 8 and earlier -->
<!--[if lt IE 9]>
    <link rel="stylesheet" href="/css/foundation3/normalize.css">
    <link rel="stylesheet" href="/css/foundation3/foundation.css">
    <link rel="stylesheet" href="/css/foundation3/app.css">
<![endif]-->
<!-- Foundation 4 for IE 9 and earlier -->
<!--[if gt IE 8]><!-->
    <link rel="stylesheet" href="/css/foundation4/normalize.css">
    <link rel="stylesheet" href="/css/foundation4/foundation.css">
<!--<![endif]-->

到目前为止,我尝试了以下内容,但它没有创建额外的<! - >和<! - <![endif] - >.

//if lt IE 9
    link(rel="stylesheet",href="/css/foundation3/normalize.css")
    link(rel="stylesheet",href="/css/foundation3/foundation.css")
    link(rel="stylesheet",href="/css/foundation3/app.css")
//if gt IE 8
    link(rel="stylesheet",href="/css/foundation4/normalize.css")
    link(rel="stylesheet",href="/css/foundation4/foundation.css")

这将简单地将每个条件注释块包装在<! - [if le IE X]>中. ……<![endif]>.我知道我可以做this,但有什么更好的吗?

由于问题是在2013年11月被问到的,我相信你问的是Jade生成IE条件评论的旧方法.

我将回答你的问题,为你提供在Jade 1.0.0版(2013年12月22日发布)中引入的新方法,因为你现在可能会使用新的Jade版本.

请注意,在Jade 1.0.0及更高版本中不再支持旧方法(由Jade评论生成的IE条件注释,例如//如果IE 8),并且无意将其放回去.

新方法是使用格式良好的IE条件注释.所以为了生成上面的IE条件注释,Jade模板必须如下:

<!--[if lt IE 9]>
link(rel="stylesheet",href="/css/foundation3/normalize.css")
link(rel="stylesheet",href="/css/foundation3/foundation.css")
link(rel="stylesheet",href="/css/foundation3/app.css")
<![endif]-->
<!--[if gt IE 8]><!-->
link(rel="stylesheet",href="/css/foundation4/normalize.css")
link(rel="stylesheet",href="/css/foundation4/foundation.css")
<!--<![endif]-->

输出HTML将如下:

<!--[if lt IE 9]>
<link rel="stylesheet" href="/css/foundation3/normalize.css">
<link rel="stylesheet" href="/css/foundation3/foundation.css">
<link rel="stylesheet" href="/css/foundation3/app.css">
<![endif]-->
<!--[if gt IE 8]><!-->
<link rel="stylesheet" href="/css/foundation4/normalize.css">
<link rel="stylesheet" href="/css/foundation4/foundation.css">
<!--<![endif]-->

请注意,使用Jade 1.0.0及更高版本,使用HTML注释是安全的,因为Jade将忽略以<开头的任何行.字符. 您还可以访问Jade的IE Con​​ditional Comments中的this post,其中讨论了Jade版本0.35.0和1.0.0之间的区别.它还显示了使用Jade mixins机制进行条件格式化的替代方法.

我希望这会有所帮助.

网友评论