使用 HTML 样式标签在 url 中进行 & 符号编码
Ampersand encoding in url with a HTML style tag
我有以下 HTML 样式标签
<style>
#loginBackground {
background-image: url(https://somedomain.com/services/storage?id=89174&type=picture&secret=ucWEYqzpQk8QCaHHp3lfDy5vRrISWwUgzGLnWaDD&timestamp=1478862301);
background-size: cover;
background-position: center center;
}
</style>
Chrome 查询这个 url: https://somedomain.com/services/storage?id=89174&type=picture&secret=ucWEYqzpQk8QCaHHp3lfDy5vRrISWwUgzGLnWaDD&timestamp=1478862301
没有在 &
中转动 &
所以图像显示不正确。
文档文档类型是 <!DOCTYPE html>
所以 HTML 5.
如果我不对这些 & 符号进行编码,一切正常,但根据此线程 what's the de facto practice on ampersand encoding in html 所有 & 符号都必须进行编码。
我尝试使用 &
而不是 &
,在 url 周围使用双引号或单引号,但没有任何效果。
这是浏览器错误还是在这种情况下不应对 & 符号进行编码?
<style>
(和 <script>
)元素被定义为(在 HTML 4 个术语中)包含 CDATA。 (HTML 5 says the same thing,但不是很清楚)。
这意味着一般的标记规则不适用,实体也不会展开。
如果您想在 <style>
元素中使用 & 符号,则必须使用文字 & 符号。
我有以下 HTML 样式标签
<style>
#loginBackground {
background-image: url(https://somedomain.com/services/storage?id=89174&type=picture&secret=ucWEYqzpQk8QCaHHp3lfDy5vRrISWwUgzGLnWaDD&timestamp=1478862301);
background-size: cover;
background-position: center center;
}
</style>
Chrome 查询这个 url: https://somedomain.com/services/storage?id=89174&type=picture&secret=ucWEYqzpQk8QCaHHp3lfDy5vRrISWwUgzGLnWaDD&timestamp=1478862301
没有在 &
中转动 &
所以图像显示不正确。
文档文档类型是 <!DOCTYPE html>
所以 HTML 5.
如果我不对这些 & 符号进行编码,一切正常,但根据此线程 what's the de facto practice on ampersand encoding in html 所有 & 符号都必须进行编码。
我尝试使用 &
而不是 &
,在 url 周围使用双引号或单引号,但没有任何效果。
这是浏览器错误还是在这种情况下不应对 & 符号进行编码?
<style>
(和 <script>
)元素被定义为(在 HTML 4 个术语中)包含 CDATA。 (HTML 5 says the same thing,但不是很清楚)。
这意味着一般的标记规则不适用,实体也不会展开。
如果您想在 <style>
元素中使用 & 符号,则必须使用文字 & 符号。