Firefox(和其他浏览器)将更好地利用现代网站的高度和宽度属性
在 Markdown 解析器中检测图像的高度和宽度 #4616
这段视频详细介绍了这一切...
我对此感到很兴奋,因为我们在开发阶段就解决了这个问题。在用户生成内容中生成正确的高度和宽度属性并非板上钉钉的事,但这项改变最终让正确操作变得轻松许多。
我对这种浏览器行为非常恼火,也考虑过一些非常规的方法来解决这个问题。还好我们没有尝试一些过于“hack”的做法。
这与该功能完全无关,但如果您好奇的话,我提出了一个问题,关于如何在 DEV 的用户生成内容上实现此功能,如果有人想对其进行破解……
在 Markdown 解析器中检测图像的高度和宽度 #4616
benhalpern 发表于
根据该视频height
,浏览器将开始根据和属性来布局图像,width
这样它们就不会在加载时“跳转”。
当然,对于用户生成的内容,我们无法总是知道图像的高度和宽度,但我们可以。
我们在 中进行各种形式的图像处理markdown_parser
,即
html = prefix_all_images (html )
html = wrap_all_images_in_links (html )
在此过程中,我们设置了一些属性,例如img["loading"] = "lazy"
。在该区域中,我们还可以设置img["height"]
和img["width"]
。
至于“如何”做到这一点,FastImage库看起来不错,但我没有进行广泛的搜索。我认为我们应该创建一种方法,让 Rails 缓存我们获取的图像的输出,这样我们就不需要每次点击“预览”或重新保存文章时都进行网络获取。FastImage
它还允许我们设置超时,我们绝对应该利用这一点,因为这不是什么关键行为,我们不希望它导致速度大幅下降。
无论如何,如果我们能做到这一点,又不至于让事情变得脆弱或缓慢,我认为我们应该这么做。了解长宽比似乎通常很有用。
如果有人掌握有关 Chrome 中此问题的更多信息(比视频中提到的更多),请发表评论。
编码快乐❤️
文章来源:https://dev.to/ben/firefox-and-other-browsers-will-be-making-better-use-of-height-and-width-attributes-for-modern-sites-4kpm