图像宽度取决于colPos(TYPO3 fluid_styled_content)

时间:2019-06-03 11:57:15

标签: typo3 typoscript typo3-9.x fluid-styled-content

我使用fluid_styled_content安装了TYPO3 9.5.7。可以使用以下TS常数设置内容元素的图像大小:

styles.content.textmedia {
  maxW = 1170
  maxWInText = 385
}

是否可以根据内容元素的列(colPos)设置这些值?

在带有css_styled_content的旧式TYPO3 6安装中,我可以使用以下TS,但不再起作用:

image.20.maxW.cObject = CASE
image.20.maxW.cObject {
  key.field = colPos
  default = TEXT
  default.value = 1170
  # Main column
  0 = TEXT
  0.value = 770
  # Right column
  2 = TEXT
  2.value = 770
  # Header
  3 = TEXT
  3.value = 1170
}

1 个答案:

答案 0 :(得分:1)

您需要确定TS常数在TS设置中的使用位置。
您要么在此处构建CASE对象,要么需要在流体中完成它。

您的CASE处于TS设置中,就像CSC(几乎)使用TS进行所有渲染一样。
在FSC中,渲染是在流体模板中完成的。在那里,您还应该可以访问其他字段,例如colPos,并且可以实现逻辑。但是该逻辑可能很复杂(流体switch的实现不是很有效),应该更容易地在TS部分中计算正确的大小,在这些部分中将常数传递到TS设置并准备在流体中使用模板。