禅与儿童编码多个元素

mln*_*nyc 0 html css emmet

我正在尝试zen编码,似乎无法复制我已经存在的一些HTML代码.

这是代码:

<div class="home-page container clearfix news-article">
    <div class="box-round">
        <div class="cn tl"></div>
        <div class="cn tr"></div>
        <div class="br-title"><span></span></div>
        <div class="br-content pad15 clearfix">
            <cfoutput>#event.getView("data")#</cfoutput>
        </div>
    </div>

</div>
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止:

div.home-page.container.clearfix.news-article > div.box-round > div.cn.tl + div.cn.tr + div.br-title > span
Run Code Online (Sandbox Code Playgroud)

我猜我被困在哪里扩展多个项目,每个项目都有一个子元素.

具体来说:我<div class="br-title">有一个空元素元素<span></span>(添加以查看我是否可以在zen中复制)但它还有一个"兄弟"元素<div class="br-content pad15 clearfix">,它本身有一个子元素.

任何建议将不胜感激.我确实查了一些例子,并试图自己解决但没有成功,所以我很好奇如何做到这一点

Nic*_*lin 5

有几种方法可以做到这一点,您可以使用子选择器括起元素或使用父运算符(^):

1. Parens ()

一种很好的方法可以避免破坏你的zen编码片段的"流程".看到这篇 SO帖子.

(div.br-title > span) + (div.br-content > cfoutput)

完整代码段:

div.home-page.container.clearfix.news-article > div.box-round > div.cn.tl + div.cn.tr + (div.br-title > span) + (div.br-content > cfoutput)
Run Code Online (Sandbox Code Playgroud)

2.家长运营商 ^

另一个选择,谢尔盖(他是Emmet的创造者,所以你可以信任他;))在评论中指出.

.br-title>span^.br-content>cfoutput

完整代码段:

.home-page.container.clearfix.news-article>.box-round>.cn.tl+.cn.tr+.br-title>span^.br-content>cfoutput
Run Code Online (Sandbox Code Playgroud)

另外一个说明

没有必要div在你的.class名字之前加入,你可以使用,.classname而Emmet将包含一个div(你需要指定其他元素).更简洁的Zen Coding片段将是:

.home-page.container.clearfix.news-article>.box-round>.cn.tl+.cn.tr+(.br-title>span)+(.br-content>cfoutput)
Run Code Online (Sandbox Code Playgroud)