2008-12-05 66 views
2

我剛剛開始玩ASP.Net MVC框架,今天我創建了一個簡單的使用一些CSS的UserControl。由於CSS是在單獨的文件中聲明的,並且包含在調用UserControl的View中,而不是在UserControl本身中,所以Visual Studio找不到UserControl中使用的任何CSS類。這讓我想到了在UserControls中處理CSS的最合適的方式。在ASP.Net中處理CSS的策略MVC UserControls

聲明中所使用的用戶控件的查看CSS提供了更多的靈活性,如果同一控制在不同的情況下使用,需要能夠適應調用視圖的風格。

讓UserControl提供自己的CSS會導致更清晰的分離,並且Views不需要知道UserControl生成的HTML/CSS的任何內容,但代價是控件的固定外觀。

因爲我是全新的框架,我猜人們已經來到這個一些好的結論。

所以,你將有用戶控件處理自己的CSS,它應該取決於在調用視圖聲明的CSS,還是有其他更好的解決辦法?

回答

1

如果您查看像Yahoo UI這樣的可剝皮工具包,它將記錄每個控件使用的類,然後爲整個工具箱提供單個外觀文件。通過更換單個皮膚文件,您可以更改整個站點的外觀。

我假設的99.9%的時間你想自定義皮膚,你的控制,而不是讓他們來預定義與外表和感覺。

作爲示例here是CSS限定用於雅虎TabView的控制

1

它應該總是在你的全局CSS真的。如果這個消息傳給其他的設計師,你不想有解釋該控件定義X風格等

0

快速點......這是確定你的意見,以瞭解HTML的......這是他們是給。我會推薦的(如果你想成爲超酷的),就是給你的「MVC UserControl」添加一個參數來指定類名。例如:

<%= MyHelperClass.Marquee("This text will scroll!!!", "important-text") %> 

我當然假裝「重要文本」是我想添加到我的控件的類名稱。

我假設當你說「用戶控件」,你指的是一個例子一樣,在上面的鏈接。