2013-08-26 17 views
0

我添加了一個asp.net文本框到我的網頁,並用CSS覆蓋它像下面所示我該如何改變我的文本框在CSS中的寬度?

<tr>   
    <td id="policeprofileachievement" colspan="2" align="center"> 
      <b>Achievement : 
      <asp:TextBox ID="txtAchievement" runat="server" ReadOnly="True" TextMode="MultiLine"></asp:TextBox> 
      <br /> 
    </td> 
</tr> 

在我的源代碼我已經增加了對文本框的寬度。但是,在我的CSS,我添加了這一點,但它並沒有調整我的文本框的寬度

#policeprofileachievement [type="text"] { 

    position:absolute; 
    margin-top:250%; 
    left:0%; 
    width:150px; 
} 

AND/OR

我刪除了從我的CSS的policeprofileachievement,並將此(這是許多推薦)

#txtAchievement{ 
position:absolute; 
margin-top:250%; 
left:0%; 
width:150px; 

} 

但是,我的文本框大小似乎沒有任何變化

是否有任何其他方式來調整我的文本框大小?

問候

+0

你可以簡單地輸入目標字段由'txtAchievement'編號。 –

+0

你能告訴我一個包含你的代碼的URL嗎? 不是標準的HTML代碼,我想知道有多少瀏覽器支持它 –

+1

@LawrenceMok:顯然這是標籤所示的ASP.NET(在服務器端ASP.NET解釋「asp:TextBox」) – nneonneo

回答

0

CSS選擇#policeprofileachievement[type="text"]裝置,它選擇任何操作,因爲在與tdid=policeprofileachievement沒有type屬性 「用ID policeprofileachievement和type=text標籤」。

您可以使用#txtAchievement來選擇文本框,因爲它有一個id(無需指定[type="text"])。

另外,如果由於某種原因,你需要選擇policeprofileachievement下多text輸入字段,你可以做

#policeprofileachievement input[type="text"] 
+0

我試過使用#txtAchievement,它出乎意料地沒有工作。 –

+0

它不會有這個id作爲它的一個asp:TextBox – CRice

0

試試這個:

空間 #policeprofileachievement和[類型之間=」文字「]

指#policeprofileachievement中的內部所有[type =」text「]的風格

#policeprofileachievement [type="text"] { 

    position:absolute; 
    top:250%; 
    left:0%; 
    width:150px; 
} 
+0

實際上我嘗試過使用type =「text」的東西。但是當我添加它時,我的保證金頂端代碼不起作用。 –

+0

@TeoChuenWeiBryan而不是邊際使用只有頂部:25%; –

+0

不幸的是,它仍然是一樣的。 –

1
#txtAchievement{ 
position:absolute; 
margin-top:250%; 
left:0%; 
width:150px; 
} 
+0

嗯我試過這種方法,但它沒有工作。我從我的源代碼中刪除了高度和寬度,並使用這種方法,但它仍然不起作用。 #txt成就{width = 150px; height:300px; }' –

+1

它不會將該id作爲它的一個asp:TextBox – CRice

+1

,它解釋了無法工作:/ –

1

你爲什麼不乾脆創建一個CSS類,並把它添加到您的文本框的CssClass屬性,像這樣..

.tb_style 
{ 
    position:absolute; 
    margin-top:250%; 
    left:0%; 
    width:150px; 
} 

然後將其添加到您的TEXTBOX像這樣

<asp:TextBox ID="txtAchievement" runat="server" ReadOnly="True" TextMode="MultiLine" Height="150px" Width="500px" CssClass="tb_style"></asp:TextBox> 

這也將允許您將相同的樣式添加到其他文本框中,並以最小的努力爲網頁創建不變的外觀和風格

請確保你不要在你的文本框中寫入一些內嵌的規則,這也在cssclass中存在...因爲你的內聯規則將覆蓋類中的規則。

+0

實際上,如此多的答案中,這項工作效果最好。然而,我有一個問題是,當我添加Cssclass時,我的單詞「Achievements:」基本消失 –

+0

您可以嘗試在PlaceBox中添加佔位符,例如PlaceHolder =「Achievements」..雖然它只是一個解決方法....至於消失的詞也許某些css規則正在使其消失,或者文本框佔用100%的寬度,Word隱藏在TextBox之後...嘗試將列的寬度設置爲大於150像素;嘗試刪除ID選擇器#policeprofileachievement [type =「text」] ..或在這個選擇器中增加寬度 – Arawn

0

CSS意味着級聯樣式表。所以你的css代碼塊會呈現第二個,但是你寫的文本框已經有了一個寬度分量,它將被你寫的css「級聯」。刪除CSS寬度屬性和您的代碼應該工作。

用你現在的代碼嘗試給出低於150px的寬度。這可能有效。

+0

我意識到這個問題,並相應地改變,但不幸的是沒有工作。 –

+1

你嘗試刪除'ReadOnly =「true」'並檢查?並在你的css中使用'[type =「input」]''。 – Nisha

-1

嘗試this.It應該work..For我的工作..

的.aspx

<asp:TextBox ID="txtAchievement" runat="server" ReadOnly="True" TextMode="MultiLine"> </asp:TextBox> 

CSS

<style> 
    #txtAchievement 
    { 
     width:50px; 
    } 
</style> 
+0

我非常懷疑標籤