為什麼background-repeat默認值是repeat而不是no-repeat?謝謝

目前我發現大部分的圖片都不需要重複

所以要設置一下no-repeat

那麼為什麼它的默認值不設置成no-repeat?

是因為

我接觸的少?其實repeat場合更多?

設計失誤?

其他方面的原因而妥協?

其他?

謝謝

剛開始學前端

謝謝修改


瀉藥

這問題……

有css background-repeat 這玩意的1996 年

(css1規範最後一版年份)

當時哪兒有那麼多帶寬讓你 no-repeat 背景圖來玩兒啊……

你再把當時 14.4k 的小貓給累著……


剛有這個屬性那會兒哪來這麼大帶寬鋪一整張背景圖啊。

所以現在不是有background-size讓你鋪整圖了么


因為在早期(大致在5年前),網頁背景都是由一些紋理的小圖片平鋪而成的。

比如知乎頁面頂端的導航欄有不是很明顯的漸變效果。它使用的CSS是

background: linear-gradient(to bottom,#086ed5,#055db5);

但是,在Can I use網站上查詢了一下,可以看到這個CSS屬性是在2012年9月才加入的。在此之前,你要實現這樣的效果,就要用這麼一張圖片

做背景,設好導航欄的高度,再用repeat去鋪滿整個導航欄。這種用法是早期網頁的標準做法,因此background-image也就是默認repeat了。


可能設計者就這麼設計了一下也沒想太多吧。。。。。

-------------------

個人看法:也許設計之初的時候設計者並沒有想到以後大家都會用一些好看的圖片來作為背景,可能考慮到的更多的是紋理背景,看看最早期的一些網頁就能發現幾乎沒有用圖片做背景的,都是單調的一些紋理(當然也是圖片)。


個人瞎猜的應該是歷史原因,當初的網站流行那種不斷重複的背景,省帶寬嘛。


repeat屬性默認no repeat。。。真的不覺得怪嗎??


糾結這種東西還不如多花點時間學習別的。


估計當時在用到 CSS background-repeat 的時候大多情況是用來做背景平鋪圖案之類的,時代不一樣,當時前端還不是很流行,在 Dreamwaver 時代應該用 repeat 的時候多些吧。


就像井蓋是圓的一樣,如果井蓋是方的,你是不是想問井蓋為什麼會是方的呢?那它總有個形狀吧。


在這個屬性剛出現的時候,大家的網路帶寬還不足以允許能佔滿全屏那麼大一張圖做背景,只能用小圖重複鋪滿。


推薦閱讀:

jpeg圖片在網頁中引用時為什麼只能寫成jpg?
學習web開發如何合理分配時間?
a 標籤為什麼能夠包含塊級元素?
EM單位的好處是什麼?
前端真的需要打包工具嗎?

TAG:前端開發 | HTML | CSS | JavaScript | CSS3 |