博客内联后缀表达式

blogger inline suffix expression

我正在开发一个博客主题,我正在尝试将 class 添加到 div 以防通过移动设备查看该博客。具体来说:我的两个 class 是:presentationpresentation-mobile
因为博主不允许使用这样的结构:

if()
  <div class="a">
else
  <div class="b">

因为它要求关闭 if 中的 div 元素(...真的吗?) 我被迫使用这串似乎不起作用的代码......有人可以指出我错在哪里或建议正确的方法吗?

expr:class='&quot;container-fluid presentation&quot; + (data:blog.isMobile? &quot;-mobile&quot;:&quot;&quot;)'

错误输出为:

The expression '"container-fluid presentation" + (data:blog.isMobile? "-mobile":"")' is not valid.

在三元运算符 ? : 周围保留 space 并使用 data:blog.isMobileRequest 而不是 data:blog.isMobile

expr:class='&quot;container-fluid presentation&quot; + data:blog.isMobileRequest ? &quot;-mobile&quot; : &quot;&quot;'

尝试使用新引入的 b:class 运算符。它用于将 class 添加到父元素(如果 class 已经存在,则包括附加 class 名称)。代码看起来像 -

<div>
  <b:class name='presentation' cond='!data:blog.isMobileRequest'/>
  <b:class name='presentation-mobile' cond='data:blog.isMobileRequest'/>
</div>

此外,data:blog.isMobileRequest 优于 data:blog.isMobile 的原因是,即使通过设置禁用了博客的移动版本,它仍能正常运行