3

CSS を介して要素自体の色を取得するにはどうすればよいですか? テキスト自体の色と同じ境界線の色にしたかったのです。

HTML の例:

<span class="status-name" style="color:#ff0000">Max</span>

CSS:

.status-name {
    font-weight: bold;
    border-bottom: 1px solid ???;
}

下の境界線の色が変わるはず#ff0000です。inheritautoまたはattr(data-color)(属性と組み合わせて)試しましdata-color="#ff0000"たが、すべてブラウザに対してルールが無効になります。

このようなクラスを持つページには数千の要素があり、主に携帯電話からアクセスされるため、可能であれば CSS を介してこの問題を解決する必要があることに注意してください。styleまた、CSS を介して設定することは最先端ではないことも知っていますが、何百もの異なる色の値があり、色ごとに独自の CSS クラスを作成するのは合理的ではありませんね。

4

3 に答える 3

7

デフォルトでは、ボーダーはボックスの色のプロパティを継承するため、CSS 宣言で色を設定しません。

border-bottom: 1px solid;
于 2013-05-20T01:25:29.207 に答える
1

これを試して:

.status-name {
    font-weight: bold;
    border-bottom: 1px solid;
}

を自動的に継承します。color

于 2013-05-20T01:27:45.203 に答える
0
// using jquery
$(document).ready
(
   function()
   {
      $('.status-name').each( function(index, element) 
      {
         $(element).css("borderColor", $(element).css('color'));
      }
   }
);

Javascript は、動的インスタンスで使用するのにはるかに適しています。また、典型的な CSS ルールに従わない変更を許可することにした場合に、将来このルールを簡単に調整できるようにすることもできます。それ以外の場合は、他の回答が必要に応じて機能するはずです。

于 2013-05-20T01:26:55.577 に答える