2010-02-05 57 views
21

我經常使用的典型CSS屬性是overflow-xoverflow-y。有時我使用CSS 2.1或更高版本的屬性或選擇器。這些(正確)提出驗證錯誤:如何在Visual Studio 2008中禁止特定的CSS 2.0驗證錯誤?

Validation (CSS 2.0): 'overflow-y' is not a known CSS property name.

多年來我忽略了這一點,但它有點感覺不對。可以在C#和其他語言中關閉特定行,塊,文件或項目的警告。 CSS(或HTML)錯誤或警告類似的可能性?我更喜歡更精細的解決方案,而不是將其全部切換。

+1

不幸的是,在2008年的VS全有或全無......是真的很討厭。 – 2010-02-05 00:22:14

+0

是不是有像事件接收器一樣,像「OnReportError」或任何我可以通過本土插件綁定,然後只忽略一個特定的列表? – Abel 2010-02-05 00:27:32

+0

@Nick:很高興你終於被證明是錯誤的,看到下面的卡爾的新答案;) – Abel 2011-10-14 09:49:08

回答

14

如果你願意琢磨一下,你可以得到你想要的東西。

  1. 轉到Visual Studio的文件夾\ Common7 \包\ 1033 \模式\ CSS
  2. 複製css21.xml到css21mod.xml
  3. 找到段:

    <cssmd:property-def _locID="overflow" ... 
    
  4. 之後部分,插入:

    <cssmd:property-def 
        _locID="overflow-x" _locAttrData="description,syntax" 
        type="enum" 
        description="Visibility of content extending beyond element's dimensions in x" 
        syntax="One of the overflow values | inherit" 
        enum="inherit auto hidden scroll visible"/> 
    
    <cssmd:property-def 
        _locID="overflow-y" _locAttrData="description,syntax" type="enum" 
        description="Visibility of content extending beyond element's dimensions in y" 
        syntax="One of the overflow values | inherit" 
        enum="inherit auto hidden scroll visible"/> 
    
  5. 重新開放gedit中,去HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0\Packages\{A764E895-518D-11d2-9A89-00C04F79EFC3}\Schemas

    如果在64位,你將不得不去SOFTWARE\Wow6432Node\Microsoft

  6. 創建一個名爲Schema 5新的密鑰,並在「文件」填充和「友好名稱」字符串值css21mod.xmlCSS 2.1 (mod)

應該全部設置!

+1

優秀的解決方案!我當然希望能夠擴展CSS驗證,這肯定會展示如何。謝謝! (PS:不要複製/粘貼製表符,它們不起作用,用空格代替它們) – Abel 2011-10-14 09:03:11

+8

如果您只是想關閉無效屬性警告,並且您覺得您不需要被通知你輸入一個錯誤,工具 - >選項 - >文本編輯器 - > CSS-> Misc->取消選中:檢測未知屬性 - 我不想提交這個答案,因爲我不希望它取代上述,但我確實認爲人們應該知道這個選擇。 – Dracorat 2012-01-11 17:26:00

+0

@Dracorat,同意,這是一個可行的選擇,謝謝。 – Abel 2012-01-19 14:16:53

8

嗨,我剛剛發現了這個。在Visual Studio 2010 SP1中,支持HTML5驗證。

Tools -> Options -> Text Editor -> HTML -> Validation

現在個人,因爲我恨VS告訴我,我有重複的ID(對於非服務器控件是罰款),我關閉了所有的警告,並設置我的驗證,XHTML5(這是一個選項)。

然而,你可以調整設置,直到你的心中的內容。可悲的是,這不是項目特定的,其他團隊成員也需要這樣做。

+0

我沒有XHTML5的選項。但無論如何,其他選項不允許你抑制特定的CSS 2.0驗證錯誤,只有所有(某種)或沒有。許多類型根本無法被抑制,只能完全打開或關閉。 – Abel 2011-07-07 13:04:42

+0

我不知道我從哪裏得到了我的XHTML5驗證,但它修復了我有警告的CSS3驗證問題。可悲的是,無論是開還是關。 – Jeremy 2011-07-08 01:20:40

+0

如果你對你的xhtml/css能力感到滿意,那麼可以把它關閉。 – Jeremy 2011-07-08 01:21:30

-1

所以這就是發生在我身上的事情。我有一個成功的工作項目。我做了一個副本,並開始處理一些標籤更改。我開始得到 「驗證(CSS 2.0):'overflow-y'不是已知的CSS屬性名稱。」

即使重新打開項目,上述錯誤仍然出現。

所以我回到我的原始項目,打開,開始調試,看看我是否也在該項目中出現該錯誤。該項目成功。停在那裏。來到我的新錯誤投擲項目,現在錯誤不再存在。

有什麼想法是什麼導致它消失。記憶中的東西。可能

+1

對我而言,如果相關文件在編輯器中未打開,則CSS錯誤將消失。當您看到錯誤並關閉文件時,CSS錯誤消失。 – Abel 2012-07-18 14:41:23

2

同樣傑里米兒童的建議,但具體對於Visual Studio 2008(在opriginal問題指定):

Tools -> Options -> Text Editor -> CSS -> CSS Specific : uncheck "Detect unknown properties"

這將刪除所有CSS驗證。這是一個很好的解決方案,如果你需要這個問題快速消失(我沒有時間/懶惰手動添加每個屬性在xml文件中,並檢查Windows註冊表...),如果你在CSS中很好(驗證不是真的當您使用內置的intellisense或您確定工作的樣式(例如從以前的網站獲取的樣式)時需要)。爲了CSS 3.0

相關問題