问题 #2990💬 已回答提出于 2020年9月1日作者 Joshmamroud0 个反应

提问:有没有办法使用同一风格属性的不同变体?

快速解答作者 Ju99ernaut

我觉得用API做不到,另外“文本对齐”对非文本组件有效吗?你可能需要使用“flexbox”中的“align-content”属性

阅读下方完整回答 ↓

问题

注意:这是在风格管理器的背景下。

有没有办法使用同一风格属性的不同变体?

例如,当我在非文本节点组件上使用文本对齐属性时,我希望标签显示为“对齐内容”,并有“左”、“右”和“中心”选项。然而,当文本节点显示“文本对齐”属性时,我希望标签显示为“对齐文本”,并有“左”、“右”、“居中”和“对齐”选项。

我在GitHub上查过文档和相关问题,但似乎找不到任何答案。

有人知道怎么实现吗?

提前感谢大家!

回答(3)

Ju99ernaut2020年9月5日

我觉得用API做不到,另外“文本对齐”对非文本组件有效吗?你可能需要使用“flexbox”中的“align-content”属性

artf2020年9月8日

你应该尝试用Component的'styleable-require'属性来显示特定的style属性(标记为'toRequire'),并用'unstylable'显示不需要的属性。 “''js 编辑。Components.addType('...', { 型号:{ 默认值:{ 'styleable-require': ['align-content'], 不可样式化:['text-align'], } } }); 在你的StyleManager配置中 buildProps: [..., '文本对齐', '内容对齐'], 性质: [{ // ... 属性:“align-content”, to...

Joshmamroud2020年9月8日

@artf 感谢你的回复。

在这种情况下,使用带有flex列和行的“align-content”属性时,我仍然会遇到问题。对于列,我希望选项分别为:“顶部”、“中心”、“底部”;对于行,我希望选项分别是:“左”、“中”、“右”。

我的用户对CSS不太熟悉,更别说Flexbox了,使用“Start”、“Center”和“End”这样的操作体验不会像我希望的那么好。

你还有其他建议吗?

谢谢你, 乔什

相关问答

通过相似的问题讨论继续研究。

与此问题匹配的付费插件

根据问题关键词和标签相关性精选,助你更快交付。

查看全部插件

正在加载付费插件推荐……

免费方案

在以下平台查看开源 GrapesJS 插件: GitHub 或在我们的免费目录中快速搜索。

浏览免费插件 →
高级方案

高级插件提供支持、定期更新和生产就绪的功能——为你节省数天的集成工作。

浏览高级插件 →

浏览插件分类

直接跳转到市场上的插件分类页面。