html - 防止从 style 属性中删除未知的 css 属性

标签 html css

所以基本上我有一些 js 添加了带有一些 css 过滤器的样式属性。我添加了该属性的 webkit 前缀和无前缀版本,如下所示:

<img src="image.jpg" style="filter: blur(10px); -webkit-filter: blur(10px)"/>

我需要保存该 html 并在不同的浏览器中显示它。但是,过滤器在不同的浏览器中不可见,因为未知属性已被删除。例如,如果过滤器是在 webkit 中添加的,则浏览器会删除非前缀属性,从而阻止 html 稍后在 firefox 中工作。我想要的是一种方法来覆盖浏览器从 style 属性中删除未知属性,以便在不同的浏览器中可以看到未加前缀的版本。我知道我可以添加一些重新计算页面加载过滤器的 js,但我不想这样做。有更好的解决方案吗?

最佳答案

我有你的例子here并且您可以看到(例如在 Chrome 中)样式属性甚至没有使用不适用的 css 属性进行更新

$().html()

只会得到那些。

在您的问题中,您可能真的不需要前缀。

值得注意的是这个事实,取自 jQuery decumentation,即

As of jQuery 1.8, the .css() setter will automatically take care of prefixing the property name.

所以你不需要添加所有这些,jQuery 1.8+ 会处理它。

按照检索带有动态添加样式的 html 的主题 - 如果您首先使用 .attr('style', 'filter: -webkit-filter: blur(10px)') 添加它,则可以使用 .html() 检索它;

关于html - 防止从 style 属性中删除未知的 css 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29176551/

相关文章:

javascript - 动态 js 表不工作

html - 网页右侧多余空格导致水平滚动条

html - 是否可以使用 CSS 转换显示?

html - 删除由监视器大小创建的额外空间

css - 如何使用 CSS 将子元素定位到父元素的顶部

html - 框阴影不超过包含元素的背景颜色

html - 试图防止自定义复选框在选中时跳转

css - 内容扩展时内容和包装器未正确扩展

javascript - 更改 'Save Image As' 的操作以重定向到适当的网页

javascript - 无法清除 Canvas