【问题标题】:apostrophe-cms toolbar with floats带浮动的撇号-cms 工具栏
【发布时间】:2018-08-24 09:28:19
【问题描述】:

我一直在用撇号组合一个网站,但是我发现其中一种布局不能很好地发挥作用。

内容是p和img标签的简单混合(向左或向右浮动)

向左浮动图像的工具栏是可以的,但任何向右浮动图像的工具栏都位于文档的错误一侧。

有没有一种很好的方法来解决这个问题而无需以不同的方式构建布局?

或者我可以使用富文本编辑器,但是富文本模块中的图像项只允许使用来自 URL 的图像,并且不包括将图像直接上传到系统的方法(我可以看到)。

感谢您的帮助!

Sample screenshot of what's happening.

  &#story-detail {

.wrapper-relative {
    section {
      overflow: visible;
      max-width: none!important;
       text-align: left;
       q {display: block; font-size: 1.3em; margin: 1em auto;}
       q, p, h5 {width:60%; margin:1em auto; z-index:5}
       div {overflow: visible;}
       img {
        position: relative;
        &.left {float:left; margin-left: 5%; padding-right: 20px; padding-bottom: 30px; max-width: 400px }
        &.right {float:right; margin-right: 5%;  padding-left: 20px; padding-bottom: 30px;  max-width: 400px}
        &.full { margin:0; width: 100%;  }
       }
}

}

}

<section class="{{ data.widget.animationType }}">
    {{ apos.area(data.widget, 'areaMain', {
      widgets: {
        'apostrophe-rich-text': {
            toolbar: ['Bold', 'Italic', 'Split',  'Link', 'Unlink']
        },
        'simple-image': {}
      }
    }) }}
</section>

【问题讨论】:

  • 我可以看看你正在使用的 CSS 吗?
  • 我已经为相应的部分添加了 SCSS,谢谢 Tom。
  • 图片和文字内容是在同一区域内分开的小部件吗? (即撇号图像和撇号富文本)
  • 是的,同一区域内有 2 个不同的小部件。 - 添加代码。

标签: apostrophe-cms


【解决方案1】:

您希望浮动整个小部件,而不仅仅是视觉内容 (img)。为您的小部件提供一个自定义类,该类利用一个架构为您自己提供不同的小部件修饰符。

在您的小部件架构中添加

{
  name: 'float',
  label: 'Float',
  type: 'select',
  choices: [
    { label: 'None', value: 'none' },
    { label: 'Left', value: 'left' },
    { label: 'Right', value: 'right' }
  ]
}

然后在lib/modules/simple-image-widgets/index.js

module.exports = {
  construct: function (self, options) {
    self.getWidgetWrapperClasses = function (widget) {
      return ['simple-image--' + widget.float];
    };
  }
};

现在你的整个包装器将有一个知道浮动的类,控件应该与容器一起使用。

【讨论】:

  • 这完全有道理,向小部件添加一个类是一种享受。谢谢。
  • 刚刚注意到这(显然)仅在小部件的构造上调用。因此,如果我更改图像的类,除非刷新页面,否则不会添加小部件类。我怎么能在小部件更新时调用它呢?是否必须将其从 always.js 添加到 self.play 方法中,还是有更好的方法?干杯。
  • 是的,要在编辑期间对更改做出反应,您可能希望在小部件的 play 方法中加强类修饰符,查看它传递的数据对象。听起来您对这种模式很熟悉,但如果不是 apostrophecms.org/docs/tutorials/getting-started/…
猜你喜欢
  • 2015-05-02
  • 1970-01-01
  • 1970-01-01
  • 2012-11-23
  • 1970-01-01
  • 1970-01-01
  • 2016-11-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多