ホームページ >ウェブフロントエンド >CSSチュートリアル >さまざまな背景で最適な視認性を実現するために、テキストの色を動的に調整するにはどうすればよいでしょうか?
さまざまな背景の明るさに対する動的なテキストの色の適応
Web 開発の領域では、さまざまな背景色に対して最適なテキストの可視性を確保することが重要です。この手法は、親要素の背景の平均的な明るさに基づいて、テキストの色を変更するか、事前定義された画像/アイコンに置き換えることを目的としています。
既存のリソース:
JSFiddle による W3C アルゴリズムのデモ:
// Random color changes for demonstration setInterval(setContrast, 1000); function setContrast() { // Generate random RGB values rgb = [Math.round(Math.random() * 255), Math.round(Math.random() * 255), Math.round(Math.random() * 255)]; // Calculate brightness using W3C formula brightness = Math.round(((rgb[0] * 299) + (rgb[1] * 587) + (rgb[2] * 114)) / 1000); // Determine text color based on brightness textColour = (brightness > 125) ? 'black' : 'white'; // Apply colors to a sample element $('#bg').css('color', textColour); $('#bg').css('background-color', 'rgb(' + rgb.join(',') + ')'); }
この例では、ランダムに変化する背景色が計算され、最適なコントラストを提供するためにテキストの色が動的に調整されます。
親要素に背景が定義されていない場合、スクリプトは要素階層を検索して、背景が定義されている最も近い要素を見つけることができます。これにより、ページ全体でテキストの可視性が一貫して維持されることが保証されます。
以上がさまざまな背景で最適な視認性を実現するために、テキストの色を動的に調整するにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。