0

表のセルを背景色で塗りつぶすことは可能ですか? と同じ問題があります。.

問題は、サイトマップを使用していて、td タグの css を設定する方法がわからないことです。

(これは Firefox と IE8 では正常に動作しますが、IE7 では動作しません)

私は次のCSSを使用しています:

.subMenu
{
    z-index: 100;
    min-width: 118px;
    border: solid 1px #545454;
    text-align: center;
}
.subMenuItem
{
    width: 100%;
    min-width: 118px;
    padding: 5px;
    border-bottom: solid 1px #545454;
    background-color: #4D97CB;
    color: #DDDDDD;
    text-align: center;
    font-weight: bold;
    font-size: 11px;
}

これにより、次の HTML が得られます。

<div id="ctl00_mnuNavigationn1Items" class="ctl00_mnuNavigation_0 subMenu ctl00_mnuNavigation_7">
    <table border="0" cellpadding="0" cellspacing="0">
        <tr onmouseover="Menu_HoverDynamic(this)" onmouseout="Menu_Unhover(this)" onkeyup="Menu_Key(this)" id="ctl00_mnuNavigationn3">
            <td>
                <table class="subMenuItem ctl00_mnuNavigation_6" cellpadding="0" cellspacing="0" border="0" width="100%">
                    <tr>
                        <td style="white-space:nowrap;width:100%;">
                            <a class="ctl00_mnuNavigation_1 subMenuItem ctl00_mnuNavigation_5" href="/Asidua.BPM.Web.WebApplication/Expenses/Default.aspx" style="border-style:none;font-size:1em;">Click here</a>
                        </td>
                    </tr>
                </table>
            </td>
        </tr>
    </table>
</div>
4

2 に答える 2

2

td要素ではなく要素にCSS スタイルを適用する必要がありますa。スパンのような要素 (リンク、emstrong、 などspan) は、既定では背景の設定をサポートしていません。

[編集] このコードを自分で生成しない場合は、次のオプションがあります。

  1. HTML/CSS ジェネレーターのソースを取得し、それを変更して、必要な CSS 属性をtd要素に追加します。

  2. これがサーバー上にある場合は、アプリの出力にフィルターを追加できるかどうかを確認してください。このフィルターは、必要な CSS を追加できます。

  3. 他のすべてが失敗した場合は、クライアントで JavaScript を使用して DOM をナビゲートし、属性を に追加できますonload

于 2009-08-18T11:17:07.087 に答える
0

もう 1 つの解決策は、CSS で a 要素を display:block に設定することです。これにより、親要素の領域全体が塗りつぶされます。

また、背景色の場合は、a 要素の高さと幅を親の要素と一致するように設定する必要がある場合があります。

于 2009-08-18T14:38:32.327 に答える