質問

数週間前にMS IE 7に切り替えたお客様に問題(多くの1つ)があります(はい、はい、わかります.......尋ねないでください.....)

ASP.NETアプリには、HTMLテーブル内のナビゲーション用の一連の<asp:LinkButton>コントロールがあり、各リンクボタンは別々の行にあります。リンクボタンは<td width="200">タグ内にあります。各<td>には、次を定義するCSSクラスが割り当てられています。

.stdLinkButton
{
    background-color: teal;
    color: Black;
    border: navy 1px solid;
    text-decoration: none;
    margin-right: 10px;
    padding: 2px;
    height: 18px;
    overflow: visible;
}

MS IE 6では、ボタンは<=>の幅全体をきれいに埋めて整列しました。幅がすべて同じピクセルで、幅が200ピクセルのボタンを中央に配置した5行または6行のリンクボタンがありました。

ただし、MS IE 7では、リンクボタンは標準としてレンダリングされており、テキストラベルを含めるのに必要な幅だけです。これで、5行または6行になり、各リンクボタンは、ボタンのテキストを含めるために必要な最小幅のボタンとしてレンダリングされます。ひどいですね...

すでに<!> quot; width:200px <!> quotを追加しようとしました。 CSSクラスに追加しますが、実際には何の効果もありません。実際には:-(

MS IE 7でこれらの<=>要素を指定された固定幅に再度レンダリングする簡単なトリック/回避策はありますか?

可能な場合は、CSSで幅を指定し続けます。すべての<=>インスタンスに移動してASP.NETプロパティ<!> quot; Width <を設定する必要はありません。 !> quot; 200px(これは動作しているようですが、リンクボタンは指定された固定幅にうまく設定されています)。

マーク

役に立ちましたか?

解決

CSSルールにdisplay: blockを追加するとうまくいきます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top