2011-11-27 60 views
0

轉義符(〜)和引號方法轉義CSS 屬性似乎工作正常,但是如果我想要CSS選擇器包含一個數字(或其他任何我想要的LESS忽略),例如LESS中CSS選擇器的轉義語法

~"#content ul.2col" { 
    float: left; 
    width: 45%; 
} 

這只是給我一個語法錯誤。有任何想法嗎?

更新:

事實證明,在開始CSS indentifier(元素名稱,類別,標識在選擇..)以數字或一個連字符後面跟着一個數字是不允許的。看到這個問題:在您的編輯提到

開始用數字

Which characters are valid in CSS class names/selectors?

+3

'#content ul.2col'本身是做什麼的?我不是一個LESS用戶,所以我不太確定它是如何處理以數字開頭的類的...(AFAIK他們不驗證爲標準CSS,所以我猜LESS會以某種方式進一步採用它) – BoltClock

+0

是你是對的,如果它以一個數字開頭就是無效的。這個問題http://stackoverflow.com/questions/448981/what-c​​haracters-are-valid-in-css-class-names解釋什麼是有效的CSS選擇器名稱 - 如果你通過CSSlint.net運行代碼,它會給出錯誤如果數字是第一。對於它的價值,LESS似乎沒有破壞任何代碼。 –

+0

我根據我們的觀察發佈了一個新答案。 – BoltClock

回答

3

類選擇不驗證爲標準的CSS。但是,我不確定LESS如何處理無效的選擇器,但您可以:

  • 將您的班級更改爲有效的班級,例如以字母開頭;或
  • 如果你一定要保持原始的數字,使用這些黑客中的任意一個,使其「有效」:

    • 使用屬性選擇:

      #content ul[class~="2col"] { 
          float: left; 
          width: 45%; 
      } 
      
    • 逃生與數字反斜槓:

      #content ul.\2col { 
          float: left; 
          width: 45%; 
      }