background-image的url属性为空

前天同事开发时,遇到一个诡异的问题,每次刷新页面,浏览量会加2,而不是想要的加1。

检查了代码控制器,没有丝毫问题,上次出现浏览量会加2的情况是因为多写了一次display,只能去头去尾,一部分一部分排查,最后发现是头部用了个background,里面的url是空值,去掉,正常。

刚查了下网上确实有出现background-image的url属性为空导致二次提交的情况,同事出现浏览量加2也是因此导致。

说明:

  1. 改变代码习惯。严禁代码中,url/href/src 值为空或 # . 这应该是目前最好的一种方式。
  2. 避免空链接属性空的链接属性是指img、link、script、ifrrame元素的src或href属性被设置了,但是属性却为空。早些版本的Webkit内核浏览器 与Firefox 会把空地址解析为当前页面的地址。如果页面内有多个空链接属性元素,当前页面的服务器则会被请求多次,增加服务器的负载。相较桌面浏览器对内核的更新升级较积极,这个问题在移动浏览器上问题可能较严重。
    幸运的是所有主流浏览器面对iframe的src属性为空时,会把空地址解析为about:blank地址,而不会向服务器发出额外的请求。因此链接避免不了出现空的情况,可以用about:blank来代替空的情况。

贴上文章:


background-image的url属性为空
https://github.13sai.com/2016/10/11/76/
作者
13sai
许可协议