2012-08-14 63 views
0

所以我有一個關於HTML和CSS的新手問題。我剛開始使用Twitter的引導框架,並有這段代碼在我的index.html文件的頭:在HTML文檔中聲明CSS,追加或覆蓋?

<link href="css/bootstrap.css" rel="stylesheet"> 
<link href="css/style.css" rel="stylesheet"> <!-- Custom CSS Overwrite--> 
<style type="text/css"> 
    html{overflow-y:scroll;} <!-- Fixes "page shift" issue --> 
</style> 

的bootstrap.css文件定義了這一點,就像這樣:

html { 
    font-size: 100%; 
    -webkit-text-size-adjust: 100%; 
    -ms-text-size-adjust: 100%; 
} 

不我在html文件中聲明的CSS覆蓋或附加html{}的CSS?我希望這會被追加,因爲覆蓋可能會讓事情陷入困境。

我不只編輯bootstrap.css文件的原因是因爲我認爲不編輯bootstrap.css文件是很好的做法,以便將來的升級儘可能順利。

順便說一句,如果有人想知道overflow-y:scroll是什麼,因爲它是一直在瀏覽器中包含垂直滾動條,無論是否有可滾動的材質。修復了可怕的「換頁」問題,這是迄今爲止我能找到的最簡單的解決方案。

+0

由於CSS的級聯特性,這將覆蓋引導CSS中的規則(如果聲明)。但只有溢出規則,沒有別的:) – Kyle 2012-08-14 10:52:53

回答

2

它會追加它。 (除非Bootstrap已經改變了html元素的overflow-y屬性。)

這幾乎總是發生在CSS中。

所以這個:

.foo { 
    background-color: red; 
} 
.foo { 
    color: green; 
} 

是一樣的:

.foo { 
    background-color: red; 
    color: green; 
} 

它並不適用的唯一情況是,當你改變了相同的值,因爲在CSS,你不能在屬性上有多個值。


我不知道,如果引導有overflow-y屬性添加到<html>元素。如果它確實是你的頁面轉換問題,css會覆蓋它。如果沒有,那麼它將被「附加」。

+0

太棒了,這正是我一直在尋找的,謝謝! Bootstrap在元素中沒有overflow-y屬性:) – Othe12sid3 2012-08-14 12:20:39