typo3 - TYPO3 10.4.12 optionSplit in IMAGE srcset
问题描述
在我的 TypoScript 对象中,optionSplit 失败。srcset 中总是添加一个逗号,W3C 验证器说:元素 img 上属性 srcset 的值错误:以空图像候选字符串结尾。
这个 TypoScript 片段
layoutKey = srcset
layout {
srcset {
element = <img src="###SRC###" srcset="###SOURCECOLLECTION###" ###PARAMS### ###ALTPARAMS### ###SELFCLOSINGTAGSLASH###>
source = ###SRC### ###SRCSETCANDIDATE###,|*|###SRC### ###SRCSETCANDIDATE###,|*|###SRC### ###SRCSETCANDIDATE###
}
}
结果是
<img src="/storage/shared/hochschule/labels/swissuniversities-logo.png"
srcset="
/storage/_processed_/5/6/csm_swissuniversities-logo_685d915ef8.png 687w,
/storage/_processed_/5/6/csm_swissuniversities-logo_57966614b3.png 436w,
/storage/_processed_/5/6/csm_swissuniversities-logo_74d43a23bf.png 255w,"
class="image-embed-item img-fluid"
sizes="(max-width: 767px) 687px, (min-width: 768px) and (max-width: 991px) 436px, (min-width: 992px) 255px" alt="">
这是一个错误吗?
解决方案
Optionsplit 只有三个值(每个级别)。主层的分离是通过|*|
,第二层的分离是||
。由于默认的换行分隔是|
,如果您错过一些空格,您可能会感到困惑。特别是如果包裹的一侧是空的。
由于可以删除值,因此只能使用一个分隔符,但不能包含更多值。您也可以完全省略|*|
分隔符,只使用二级分隔符||
第一个(在第一个分隔符之前)或仅“正常”包装是开始,然后是中间部分。在第二个分隔符之后是结束部分。
如果在整个包装周围还有分隔符的情况下使用optionSplit
包装,则会产生更多的混乱。所以要小心你的分隔符和空格。.noTrimWrap
|
推荐阅读
- c# - 将自定义标头添加到 HttpRequestHeaders
- xml - 使用 XSLT 基于子属性值删除重复标签
- linux - 结合两个否定的文件检查条件(-f 和 -s)似乎返回不正确的结果
- arrays - 返回数组中数字的总和,忽略数字部分除外
- javascript - 如何在本地存储从 API 检索到的数据并使用 Javascript 以相等的时间间隔更新这些数据?
- ruby-on-rails - 为什么redis返回更多的值而不是计数?
- c# - ASP.NET Core 3 - 带有 Kestrel 和 IIS Express 的 Web.config?
- google-apps-script - 如何显示在特定单元格中运行宏的用户的名称?
- r - 如何计算多个数据帧中值的出现次数
- css - 有没有办法让文本粘在 div“边框”上?