我真的需要你的幫助,因爲我不知道這是否可能或正確。複雜的n型選擇器有:not()和不均勻的對象數量?清除每四個元素
這是我的HTML
所以,你可以看到我有一個<ul>
多<li>
的在裏面。而讓我的整個事情變得複雜的是其中有<li class="wrapper year">
的事實。
所有這些<li>
的是在4列並列漂浮。每4個元素後我需要一個clear
,所以下一行在同一個水平上是水平的。但是<li class="wrapper year">
項目被排除在此行爲之外,因爲它們應始終爲clear:both
。
首先,我知道這可能不是一個完美的HTML結構,在<li>
元素中也包含「年」,但是基於背景中的CMS,可能無法以其他方式執行此操作!
這是CSS
ul.event-items li:not(.year):nth-of-type(4n+1) { clear: right; }
ul.event-items li:not(.year):nth-of-type(4n+2) { clear: left; }
Here is a live demo of the problem
這幾乎工作得很好,但我不知道爲什麼下面發生的事情?
因此,正如您可以看到2012年爲11個項目的計數,2011年有13個項目,2010年有12個項目。所以,因爲這些項目是基於CMS的變化。
浮動和結算(每4日後li
)似乎在2012年和2011年都可以正常工作,但到了2010年時,您可以看到在該行的第二個元素之後有明確的結果。這是爲什麼?
而不是張貼一個巨大的圖像,發佈有問題的代碼在http://jsfiddle.net的現場演示 – Blender
這裏是演示:http://jsfiddle.net/wQTBh/ – matt
它可能只是我,但你的演示只是隨機黑塊,看起來不像你在這裏發佈的圖片。 CSS是一樣的嗎? – Blender