2011-12-08 6 views
5

私のページには、いくつかのテキストボックスコントロールがあります。いくつかはマルチラインで、他はシングルラインです。私は、マルチラインとシングルラインのテキストボックスの間のデフォルトのフォントが異なっていることに気付きました。なぜ誰が知っていますか?どうやって同じフォントにするのですか?ありがとう。ここマルチラインテキストボックスのデフォルトフォントはシングルラインテキストボックスと異なりますか?

サンプルである:

<asp:TextBox ID="TextBox1" runat="server">hello</asp:TextBox> 
    <asp:TextBox ID="TextBox2" runat="server" TextMode="MultiLine">hello</asp:TextBox> 

TextBox1テキストボックスのフォントがMSシェルはDlgある、TextBox2をするためのフォントは固定幅です。

答えて

7

スタイルセレクタ

<style type="text/css" media="screen"> 

    /* match all single/multiline textboxes (IE 7+ for the attribute selector) */ 
    TEXTAREA, INPUT[type="text"] 
    { 
     /* font size, line height, face */ 
     font: 11px/1.5 "Trebuchet MS", Arial, Verdana, sans-serif; 

     /* useful for supporting 100% width inclusive of padding and border */ 
     box-sizing: border-box; 
    } 

</style> 

注意。スクリーンメディアの場合、スタイルは入力を促すはずです。印刷の場合、印刷されたページは(明らかに)編集できないため、スタイルが異なる場合があります。

「なぜ」デフォルトのフォントが異なるかについては、TEXTAREAsは、列と行を使用して従来のサイズになっていました。固定幅フォント(固定幅フォントなど)を使用すると、行内の文字数を制御することができます。これはおそらくほとんどのブラウザがデフォルトで​​3210の固定幅フォントを使用するためです。あなたのテーマファイルで

をテーマ(ASP.NETのみ)を経由してCSSクラスを割り当てる

、次のようにエントリを追加します。

<asp:TextBox runat="server" CssClass="myClassName"></asp:TextBox> 

これは、クラス「myClassNameを適用しますテーマが適用されるすべてのテキストボックスに適用されます。

+0

テーマを各ページに追加するのではなく、ソリューション全体に適用できますか? – GLP

+0

@GaolaiPeng - はい、web.configで可能です。特定の構文については、このリンクを参照してください:http://msdn.microsoft。com/ja-us/library/0yy5hxdk.aspx –

+0

ありがとうございました。それは美しく働いた。 – GLP

0

スタイルシートを使用している場合は、1行のテキストボックスとは異なるテキストエリアに特定のフォントセットがないようにする必要があります。それは

それにフォントスタイルを設定し
text area 
{ 
    font-size:10px; 
} 
1

、次のようになります。 CSS:

<style type="text/css"> 
    .text 
    { 
     font-family:Verdana; 
     font-weight:bold; 
    } 
</style> 

HTML:

<asp:TextBox CssClass="text" ID="TextBox1" runat="server" Height="196px" TextMode="MultiLine" 
    Width="271px"></asp:TextBox> 

幸運を! media属性は必須ではなく、入力フィールドの動作は、描画対象(画面に対して例えばプリンタ)に依存して広範に変動し得ることCSSの

+2

これは動作しますが、各テキストボックス宣言にCssClassを配置するのは、通常、必要以上のコードです。通常、これはCSSタグセレクタおよび/またはASP.NETテーマのみを使用して集中的に定義することができます。また、アプリケーション全体で多くのテキストボックスが宣言されている場合、タグ自体のインライン高さと幅は維持しにくいでしょう。 –

+0

+1絶対に正しいです。 –

+0

CSSタグセレクタやASP.NETテーマの使い方を教えていただけますか?私は見当もつかない。私たちは多くの異なるページに多くのテキストボックス(1行または複数行)を持っています。 – GLP

関連する問題