我想在運行時更改我的網頁上h1標題行的背景顏色。如果我們在prod/dev中運行,我希望相應地設置H1頭標籤的背景顏色。C#ASPX設置h1背景顏色運行時間
我目前設置背景顏色爲H1如下:
align="center" style="background-color: #389BD6 ">HEADER 1 LINE
但我希望能夠指定的不同取決於當前環境的顏色。
我假設它會涉及一個CSS,但這對我來說是新的,需要一些幫助。
感謝
我想在運行時更改我的網頁上h1標題行的背景顏色。如果我們在prod/dev中運行,我希望相應地設置H1頭標籤的背景顏色。C#ASPX設置h1背景顏色運行時間
我目前設置背景顏色爲H1如下:
align="center" style="background-color: #389BD6 ">HEADER 1 LINE
但我希望能夠指定的不同取決於當前環境的顏色。
我假設它會涉及一個CSS,但這對我來說是新的,需要一些幫助。
感謝
CSS:正是醫生有序
CSS正如你所提到的行動來處理這個問題,你可以簡單地定義一個樣式,將針對您的h1
元素的適當過程如預期:
<style type='text/css'>
h1 {
text-align: center;
background-color: #389BD6;
}
</style>
您可以直接在您的HTML本身(最好是在<head>
部分)引用此,或通過外部CSS文件(也defin在你的頁面的<head>
節)版:基於
<!-- A reference to a CSS file containing the previous style -->
<link href="your-css-file.css" rel="stylesheet" type="text/css" />
造型環境
至於改變基於環境的風格,你可以考慮增加一個CSS類的高級別您在運行時頁面的元素,加入另一種風格來覆蓋先前的默認之一:
<!-- Define a runat="server" tag on your body element and an ID (assumes Web Forms) -->
<body id="body" runat="server">
,然後你Page_Load
事件中,根據您的設置類EN環境(即調試,生產等):
// Find your body element
var body = FindControl("body") as HtmlGenericControl;
// If you were able to find it, set it's class
if(body != null)
{
// Set your environment here
body.Attributes["class"] = "production";
}
,這會使得「生產」類的<body>
元素:
<body id="body" class="production">
,你可以用它來定義另一個CSS樣式只定位在<h1>
元素生產環境:
<style type='text/css'>
h1 {
text-align: center;
background-color: #389BD6;
}
/* Target <h1> elements in production */
.production h1 {
background-color: purple;
}
</style>
您還可以通過建立多個樣式表(即production.css
做到這一點,development.css
等),並在其中定義每種特定樣式,並使用一些機制(如Preprocessor Directives)來確定要使用哪種樣式。
如果你需要它是動態的,你可以這樣做:
<link href="http://somewebsite.com/css.aspx" type="text/css" rel="stylesheet">
這種方式你是像一個CSS文件處理一個aspx文件,但你可以動態地設置H1的背景值例如,通過使用.aspx 中所需的任何邏輯,但只能使用此樣式表來包含可能在運行時更改的樣式,因爲它會產生大量開銷。
你用什麼來定義環境? IE怎樣才能知道你在哪個環境中 – Pete