<f:image without width declaration 在 HTML 中创建 width-属性 保持不变,即使原始图像的宽度发生变化

<f:image without width declaration creates a width-property in HTML that stays the same, even when the width of the original image changes

我创建了一个图像对象,其宽度为 width-属性:

<f:image src="EXT:my_template/Resources/Public/images/image.png" />

这将创建 HTML-输出:

<img src="typo3conf/ext/my_template/Resources/Public/images/image.png" width="526" height="725" alt="">

现在,当我将 image.png 更改为另一个宽度(例如 width=200px)时,它仍然会创建相同的 HTML-输出并且图像会被缩放。

我刷新了后端的所有缓存,通过安装工具删除了缓存并删除了 typo3temp 文件夹。 HTML-Output 仍然添加旧的宽度-属性。

我必须在

我能做什么?这是缓存在哪里?

尝试在"Clean up"下的安装工具中清理处理过的文件。有时 TYPO3 在文件名保持不变的情况下无法意识到文件已更改。

我知道这个"bug"。问题是,TYPO3 将 width/height 属性缓存在 sys_file_metadata 数据库 table 中,并且不会在更改时更新数据。您可以手动更改它,但这只是一种解决方法。

这不是一个错误,TYPO3 保存原始图片的宽度和高度用于许多不同的用途很有用...

我认为最好的解决方案是让 TYPO3 做这些事情...

因此,您为没有宽度和高度的 img 编写流畅的代码:

<f:image src="EXT:my_template/Resources/Public/images/image.png" />

并使用 css 为 img 标签添加一些属性:

img {
  max-width: 100%;
  height: auto;
}

所以你的图片是响应式的 ;)

或者将 maxW 和 maxWInText 值检查到“CONTENT”类别常量中。也许...