2015-04-20 21 views
-1

無處不在網上我發現多個CSS類使用空格作爲分隔符。
所以,我寫了以下內容:css多個類 - propper分隔符

<div class="page hidden"> 

CSS

.hidden{ 
    display:none; 
} 

使用上面的代碼.hidden不是隱藏,而是可見。

但使用:

<div class="page, hidden"> 

.hidden是隱藏的。

任何解釋!

+2

的空間是正確的分隔符和工作在這裏很好http://jsfiddle.net/j08691/r1us08a3/。你確定你沒有其他可能導致問題的CSS規則嗎?你能創造一個重現問題的小提琴嗎? – j08691

+0

毫米也許.page有一個重要的聲明覆蓋.hidden? –

+0

嘗試放置'!important'並查看是否覆蓋任何其他聲明。 – user1012181

回答

2

你正在做的一切是正確的。唯一的解釋是,你有其他影響它的東西,你沒有提出你的問題。

只是爲了證明它的工作原理:

div { 
 
    height:300px; 
 
    width:300px; 
 
    position:relative; 
 
    border-radius:150px; 
 
    line-height:300px; 
 
    text-align:center; 
 
} 
 
div div { 
 
    height:150px; 
 
    width:150px; 
 
    border-radius:75px; 
 
    position:absolute; 
 
    top:75px; 
 
    left:75px; 
 
    line-height:150px; 
 
} 
 
.green { 
 
    background-color:green; 
 
} 
 
.red { 
 
    background-color:red; 
 
    color:white; 
 
} 
 
.hidden { 
 
    display:none; 
 
} 
 
.visible:hover .hidden { 
 
    display:block; 
 
}
<div class="green visible"> 
 
    <div class="red hidden"> 
 
    hidden div 
 
    </div> 
 
    hover here 
 
</div>

+0

「你有其他影響它」的建議已經多次出現在評論中。沒有太多答案。 – j08691

+0

@ j08691是的,但評論並不能證明這一點。根據目前形式提供的所有信息,這就是我認爲的答案。 –

+0

如果OP發佈了一個完整的代碼示例,但他沒有做到的唯一事情就是證明任何事情。在那之前,我們所有人都在做的是猜測。 – j08691

2

剛例如:

.page{ display:block} 

.hidden{ 
    display:none!important; 
} 

的jsfiddle:https://jsfiddle.net/r1us08a3/2/

+3

OP沒有聲明他們正在使用(當前)的任何地方。 –

+0

我只是用它作爲例子。 – user1012181

+1

:)即使我對這個問題很好奇。只是想讓他嘗試一下,讓我們知道它是否仍然存在問題。 – user1012181

2

你的CSS的層疊順序會影響所應用的樣式。所用標籤的特殊性也會影響您從前端看到的內容。 這樣一個例子:

/* .hidden is ignored in this example because .page comes after the hidden tag */ 
 
.hidden {display:none;} 
 
.page {display: block;} 
 

 

 
/* where as this will hold as it's more specific to the page, so will take a higher priority */ 
 
body .hidden{display: none;} 
 
/* or this as it's more specific to the exact tags above */ 
 
.page.hidden {display: none;}