2012-02-22 14 views
0

我是ASP.net的新手。CSS是否主要用於HTML控件,而不是用於asp.net服務器控件?

1)我知道CSS可以在asp.net服務器控件使用,但CSS主要用於HTML控件?對於asp.net服務器控件,我應該使用它的內聯外觀設置嗎?

2)另外,在Asp.NET MVC模式,我應該用HTML只或更少的Asp.net服務器控件?

3)到ASP.NET Web表單模型,我應該使用jQuery的功能,而不是它的控制?或者,如果我使用ASP.NET Web表單模型,我應該只使用原始JavaScript代替jQuery?

回答

0

對於問題1,您可以使用css for asp.net控件。有一個cssclass屬性可以讓你選擇一個類。也.NET控件呈現爲HTML控件,以便您可以控制他們的方式,以及(如GridView控件呈現爲一個表)

0

這是一個自以爲是的問題/響應,但最好的我可以給你:

1 )儘可能使用CSS,而不是內聯樣式。爲此使用CssClass屬性。如果您必須設置控件屬性,請使用ASP.Net主題將外觀集中在一個位置。

2)不知道我理解這一個,但只會說:不要在MVC項目中使用ASP.Net服務器控件。擊敗MVC的全部目的。

3)爲Web表單,使用jQuery用於客戶端交互或AJAX回發到服務器時可能的(會比的UpdatePanel打火機很多典型的)。但是在大多數地方提交表單時仍然應該使用WebForms回發機制。

1
  1. 您應該使用CSS。如果您選擇使用內聯外觀設置來設置服務器控件的樣式,則每次控制時都必須執行此操作。使用CSS,您可以使用一個定義添加一個類和樣式(參見Separation of Concerns)。

  2. 使用服務器控件。除非您將HTML控件定義爲runat="server"(順便說一句,這使得它們成爲服務器控件),否則您將無法訪問代碼隱藏中的HTML控件。請記住,最終,ASP.Net服務器控件將作爲HTML控件呈現給用戶使用的頁面。

  3. 使用什麼最適合的情況。如果一個jQuery UI控件更好和/或更快地完成這個工作,就使用它。否則,使用你自己的。同樣,如果一個jQuery函數更好和/或更快地完成工作,就使用它。否則,請用普通的JavaScript或代碼隱藏來處理它。

我想在這裏表達的主要想法是使用最好的工具來完成這項工作。我在自己的工作中使用ASP.Net進行開發,並且使用原生JavaScript,jQuery,CSS(純HTML,ASP.Net服務器控件,代碼隱藏等)的組合來完成工作。我試圖遵循「最佳實踐」的原則,其中包括諸如關注分離,DRY principle以及「對你所接受的內容的寬容以及對你所發的內容的嚴格要求」(我忘記了這個所謂的內容,但它來自其中一個TCP/IP的設計者)。

0

ASP.NET實際上是HTML控件的一個包裝。它不像其他腳本語言那樣具有廣泛的功能,例如PHP,Python等。爲了在ASP.NET中完成作業,您必須使用C#或VB.NET。

所有ASP.NET控件都呈現爲HTML控件。您可以使用內聯CSS或嵌入式或全局CSS,就像使用其他任何html控件一樣。最終結果將是相同的。

您應該始終在.ASPX頁面上使用ASP.NET控件,否則您的表單將不會提交,並且需要您花費大量時間進行故障排除。

您可以使用JavaScript,jQuery,任何你想要的ASPX頁面。微軟自己在ASP.NET中使用Javascript。

+0

ASP.Net是位於.net框架之上的Web框架/堆棧。它不是HTML控件的封裝。 – James 2012-02-22 17:57:00

+0

您可以設計自己的服務器控件或用戶控件。您甚至可以從內置控件繼承並將其擴展爲您想要的方式。通過服務器控件,您可以對發送回瀏覽器的所有內容進行低級別控制,用戶控件是簡單的可重複使用的html/javascript /其他服務器控件,可以在網站上的多個位置快速重用。 – James 2012-02-22 17:59:29

+0

它是.NET框架,但本質上是HTML控件的包裝。在PHP中,您使用HTML + PHP。在ASPX中,沒有HTML控件。他們只是僞裝成ASPX控件。 ASPX中沒有功能,但可以創建功能。它必須是C#或VB.NET函數。 ASPX只是一個包裝,沒什麼。 – 2012-02-22 18:07:27

相關問題