隱藏垂直滾動條的多行TextBox我有一個多行TextBox:在IE
<asp:TextBox ID="txtBody" runat="server" TextMode="MultiLine" Rows="10" Width="95%" />
在IE中存在,即使內部文本框文本不佔用10線垂直滾動條。
在Firefox中不會發生,只有文本超過10行纔會出現滾動條。
可以做些什麼?
隱藏垂直滾動條的多行TextBox我有一個多行TextBox:在IE
<asp:TextBox ID="txtBody" runat="server" TextMode="MultiLine" Rows="10" Width="95%" />
在IE中存在,即使內部文本框文本不佔用10線垂直滾動條。
在Firefox中不會發生,只有文本超過10行纔會出現滾動條。
可以做些什麼?
設置CSS樣式溢出到汽車:
<asp:TextBox ID="txtBody" runat="server" TextMode="MultiLine"
Rows="10" Width="95%" style="overflow:auto;" />
默認行爲瀏覽器之間的區別,這就是爲什麼你看到在IE和FF不同的行爲時未指定overflow
的。
要覆蓋您的網頁上的所有文本框多的默認瀏覽器的行爲,你可以在一個樣式定義添加。那麼你就需要包括每個文本框的內聯樣式:
注:多行TextBox使用HTML標籤<textarea>
呈現,所以我們將指定textarea
元素類型的CSS樣式。
textarea {
overflow: auto;
}
<textarea id="txtBody1" rows="5">Text in
textbox
with
many
lines,
so that
scrollbar
will
appear.
</textarea>
<textarea id="txtBody2" rows="5">Smaller text, no scrollbar.</textarea>
這是IE瀏覽器的默認行爲。溢出的默認值是可見的,即使內容沒有溢出,IE也會添加一個禁用的滾動條。
您可以添加CSS類的元素
<style>
.Over { overflow: auto; width: 95%; }
</style>
<asp:TextBox ID="txtBody" runat="server" CssClass="Over" TextMode="MultiLine" Rows="10" />
比內聯樣式更好。 – Alextronic 2010-02-18 18:21:56
@Alextronic:關鍵是你需要使用CSS樣式'overflow:auto;'。你如何選擇實現它是可選的,並不是真正的問題在這裏。你也可以爭辯說最好使用一個單獨的css文件,但這與問題無關。無論哪種方式工作。內聯樣式用最少量的代碼和複雜度來演示。 – awe 2012-08-01 10:53:14
笑,我們的代碼dosnt工作時,我加入了一些新的額外的文本,以第二個div。我再次看到滾動條。確實, – 2015-10-06 14:30:00