検索
ホームページphp教程php手册JavaScript を使用して新しいスタイル シートと新しいスタイル ルールを作成する、JavaScript スタイル シート

JavaScript を使用して新しいスタイル シートと新しいスタイル ルールを作成する、JavaScript スタイル シート

今日の時代では、Web ページで JavaScript を多用することが一般的であり、それらを最適化して作成するためのさまざまな方法を見つける必要があります。そちらのほうが早いです。イベント委任を使用してイベント リスナーの効率を高め、頻度削減テクノロジーを使用して特定のメソッドの使用回数を制限し、さまざまな JavaScript ローダーを使用して必要なリソースを動的にロードします。ページをより効率的かつ機敏にするもう 1 つの方法は、DOM 要素をクエリしたり、各要素にスタイルを調整したりすることなく、スタイル シート内のスタイルを動的に追加または削除することです。このテクニックの使い方を見てみましょう!

キャプチャスタイルシート

ページでは複数のスタイル ファイルを参照している場合があります。そのうちの 1 つを選択できます。指定すると、HTML ページの LINK タグと STYLE タグに ID を追加して区別し、document.styleSheets オブジェクトに格納されている CSSStyleSheet オブジェクトを取得できます。

リーリー

注意すべき重要な点は、スタイルシートのメディア属性です。注意しないと、画面表示に使用されるスタイルシートを変更するときに、使用するスタイルシートを誤って印刷用に変更してしまう可能性があります。 CSSStyleSheet オブジェクトにはさまざまな属性情報があり、必要に応じて取得できます。

リーリー

スタイル シートをキャプチャして、そこに新しいスタイル ルールを追加する方法はたくさんあります。

新しいスタイルシートを作成します

ほとんどの場合、最善の方法は、新しい STYLE 要素を作成し、それに動的にルールを追加することです。とてもシンプルです:

リーリー

残念ながら、WebKit タイプのブラウザでは、上記のコードを正しく実行するには若干の変更を加える必要がありますが、何があろうとも、必要なシートを取得できます。

スタイルルールの追加 – 標準のaddRuleメソッド

CSSStyleSheet オブジェクトには addRule メソッドがあり、セレクター、スタイル ルールの CSS コード、整数の 3 つのパラメーターを受け入れることができます。この整数は、スタイル シートの位置 (同じセレクターを基準としたもの) を示すために使用されます。 ):

sheet.addRule("#myList li", "フロート: 左; 背景: 赤 !重要;", 1);
位置のデフォルト値は -1 で、これは最後に配置されることを意味します。追加の制御または遅延書き込みの場合は、ルールに ! important を追加して、位置の問題を排除できます。 addRule を呼び出すと -1 が返されますが、これには何も意味がありません。

このテクノロジーの利点は、ページにスタイル ルールを動的に追加して適用できることです。各要素を操作する必要がなく、ブラウザーがこれらのルールを自動的に適用します。効率的にしましょう!

新しいスタイルのルール

CSSStyleSheet オブジェクトには insertRule メソッドもありますが、このメソッドは初期の IE では使用できませんでした。 insertRule メソッドは、addRule メソッドの最初の 2 つのパラメーターを組み合わせます。

sheet.insertRule("header { float: left; opacity: 0.8; }", 1);
この方法は見苦しく見えますが、間違いなく非常に便利です。

スタイルルールを安全に適用する

すべてのブラウザが insertRule をサポートしているわけではないため、コードを効果的に実行できるようにカプセル化を行うことが最善です。非常に簡単な梱包方法をご紹介します:

リーリー

この方法はさまざまな状況に対処できます。このメソッドのコードを個別に使用する場合は、try{}catch(e){} でコードをラップするのが最善です。

メディアクエリのスタイルルールを追加

特定のメディアクエリにスタイルルールを追加するには 2 つの方法があります。 1 つ目は、標準の insertRule メソッドを使用する方法です:

sheet.insertRule("@media のみ画面と (最大幅 : 1140px) { ヘッダー { 表示: なし; } }");
古い IE は insertRule をサポートしていないため、別の方法を使用できます。つまり、STYLE 要素を作成し、それに正しいメディア属性を与え、それに新しいスタイル ルールを追加します。この方法では STYLE 要素が追加されますが、非常に簡単です。

スタイル ルールをスタイル シートに動的に追加することは、非常に効率的でシンプルなテクノロジだと思います。次のアプリでこのテクニックを忘れずに試してみてください。かなりの労力を節約できます。

(英語: JavaScript を使用してスタイルシートにルールを追加します。)

以上がこの記事の全内容です。皆様の学習のお役に立てれば幸いです。また、皆様もBangke Homeを応援していただければ幸いです。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター