url() 函數中的路徑加引號的利弊

url() 函數中的路徑應該加引號嗎?

加不加引號,各有各的說話,也有說加不加都沒所謂的,但是其內在是有一定的區別的,主要體現的地方如下面所描述,我們應該根據業務的需要來指定規範

1.建議不加引號

(1)低系列 IE 不兼容帶有引號的寫法;
(2)如無必要,省略 url 中的引號(出自《CSS 創作指南(Beta)》);
(3)不寫引號完全合法,通常在 CSS 壓縮工具中也會去掉 url() 函數中的引號。

2.建議加引號

(1)不加引號會有一些 edge cases(特殊的 escape 規則等),增加了認知負擔,加了引號之後就是常見的字符串規則了;
(2)根據標準原文,不帶引號的寫法是 “legacy syntax”,雖然出於兼容性考慮肯定不會去掉,但肯定不算是推薦寫法;
(3)url() 實質上是一個 CSS 函數,它可以接受第二個參數 <url-modifier>,如果用不帶引號的寫法的話是沒辦法傳第二個參數進去的;
(4)從安全角度來講是要加上的,否則容易被xss。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章