目次
CSSソリューション
ジェーンオースティン小説
プライドと偏見
センスと感性
JavaScriptソリューション
ランタイム検索と交換
ビルドタイム検索と交換(webpack)
結論
ホームページ ウェブフロントエンド CSSチュートリアル CSSおよびJavaScriptを使用した特定の文字を変更します

CSSおよびJavaScriptを使用した特定の文字を変更します

Apr 02, 2025 pm 04:40 PM

CSSおよびJavaScriptを使用した特定の文字を変更します

CSS内の特定の文字を変更するのは難しい場合があります。直接的な操作には、多くの場合、個々のHTML調整が必要になり、頻繁に使用されます<span></span>要素。ただし、特定のシナリオにより、CSS中心のソリューションが可能です。この記事では、JavaScriptの介入を要求するCSSファーストアプローチと状況について説明します。

CSSソリューション

現在、CSSには、HTML変更なしで堅牢な文字固有のターゲティングがありません。それにもかかわらず、一部の状況はCSSの恩恵を受けます。

@font-face

@font-faceルールは、通常、カスタムフォント用に、 unicode-rangeプロパティを使用して特定の文字をターゲットにします。たとえば、見出しのAmpersands(&)には明確なフォントが必要な場合:

 @import url( 'https://fonts.googleapis.com/css2?family=montserrat:wght@300');

H1、H2、H3、H4、H5、H6 {
  font-family: 'Ampersand'、Montserrat、Sans-Serif;
}

@font-face {
  font-family: 'ampersand';
  SRC:local( 'Times New Roman');
  Unicode-Range:U 0026; / * ampersand */
}
ログイン後にコピー

これは、次のようなHTMLと組み合わせています

<h1 id="ジェーンオースティン小説">ジェーンオースティン小説</h1>
<h2 id="プライドと偏見">プライドと偏見</h2>
<h2 id="センスと感性">センスと感性</h2>
ログイン後にコピー

アンパサンドにのみ「Times New Roman」を適用します。

::first-letter

::first-letter擬似要素は、ドロップキャップに優れています。

 P :: First-Letter {
  フォントサイズ:125%;
  font-weight:bold;
}
ログイン後にコピー

ただし、その適用性は限られています。 An ::nth-letter擬似要素は、依然として望ましいが未実現の特徴です。

::after

:: contentプロパティを使用したPseudo-Element ::after 、最終文字が一貫している場合、要素の後に文字を追加します。たとえば、それぞれ後にスタイルの感嘆符を追加します<h2></h2>

 h2 ::後{
  コンテンツ: '\ 0021'; /*! */
  色:赤;
  フォントスタイル:イタリック;
}
ログイン後にコピー

font-variant-alternates

font-variant-alternatesプロパティ(Firefoxのみ) character-variant()関数を使用して、フォント内で使用可能な場合、代替グリフを選択します。ブラウザのサポートが限られているため、生産には適していません。

JavaScriptソリューション

JavaScriptは、特にビルドプロセス中に適用された場合、パフォーマンスのペナルティなしで効率的なキャラクター操作を提供します。一般的なユースケースには、文字を置き換えることが含まれます<span></span>スタイリングの要素。

ランタイム検索と交換

見出し内の「ロゴ」で最初の「O」をスタイリングするには:

 const見出し= document.queryselectorall( "h1、h2、h3、h4、h5、h6");

for(見出しの見出し){
  heading.innerhtml = heading.innerhtml.replace(/\ blogo \ b/g、(match)=> match.replace(/o/、 ' <span class="special-o">o</span> '));
}
ログイン後にコピー

これにより、「ロゴ」が変更されたバージョンに置き換えられ、最初の「O」の周りにスパンを追加します。正規表現は、単語全体の「ロゴ」のみがターゲットにされることを保証します。

ビルドタイム検索と交換(webpack)

WebPackのstring-replace-loaderプラグインは、ビルドプロセス中に発見と再表示を実行します。インストール:

 npmインストール -  save-dev string-replace-roader
ログイン後にコピー

次に、 webpack.config.jsで:

 module.exports = {
  // ...
  モジュール:{
    ルール:[
      {
        テスト:/\.html$/i、
        ローダー:「String-Replace-Roader」、
        オプション:{
          検索: /\ blogo \ b /g、
          交換:「ロゴ」、//スタイルのバージョンに置き換えます
        }
      }
    ]
  }
};
ログイン後にコピー

これにより、クライアント側のJavaScriptの実行が回避されます。 testプロパティは、さまざまなファイルタイプ(JSX、TSX、PUGなど)に適応します。

結論

カスタムフォントは、Font ForgeやBirdfontなどのフォント編集ツールを備えた快適な人々のための代替品を提供します。最良のアプローチを選択することは、キャラクターの変更とプロジェクトの要件の複雑さに依存します。

以上がCSSおよびJavaScriptを使用した特定の文字を変更しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Googleフォント変数フォント Googleフォント変数フォント Apr 09, 2025 am 10:42 AM

Google Fontsが新しいデザイン(ツイート)を展開したようです。最後の大きな再設計と比較して、これははるかに反復的です。違いをほとんど伝えることができません

HTML、CSS、JavaScriptを使用してアニメーションカウントダウンタイマーを作成する方法 HTML、CSS、JavaScriptを使用してアニメーションカウントダウンタイマーを作成する方法 Apr 11, 2025 am 11:29 AM

プロジェクトにカウントダウンタイマーが必要だったことはありますか?そのようなことのために、プラグインに手を伸ばすのは自然なことかもしれませんが、実際にはもっとたくさんあります

HTMLデータ属性ガイド HTMLデータ属性ガイド Apr 11, 2025 am 11:50 AM

HTML、CSS、およびJavaScriptのデータ属性について知りたいと思っていたことはすべて。

CSSを介してファーストクラスの名前アイテムを使用して子要素を選択する方法は? CSSを介してファーストクラスの名前アイテムを使用して子要素を選択する方法は? Apr 05, 2025 pm 11:24 PM

要素の数が固定されていない場合、CSSを介して指定されたクラス名の最初の子要素を選択する方法。 HTML構造を処理するとき、あなたはしばしば異なる要素に遭遇します...

フレックスレイアウト内の紫色のスラッシュ領域が誤って「オーバーフロー空間」と見なされるのはなぜですか? フレックスレイアウト内の紫色のスラッシュ領域が誤って「オーバーフロー空間」と見なされるのはなぜですか? Apr 05, 2025 pm 05:51 PM

フレックスレイアウトの紫色のスラッシュ領域に関する質問フレックスレイアウトを使用すると、開発者ツールなどの混乱する現象に遭遇する可能性があります(D ...

SVGでタータンパターンを生成する静的サイトを作成する方法 SVGでタータンパターンを生成する静的サイトを作成する方法 Apr 09, 2025 am 11:29 AM

タータンは、スコットランド、特にファッショナブルなキルトに通常関連する模様のある布です。 Tartanify.comでは、5,000を超えるTartanを集めました

SASSをより速くするための概念の証明 SASSをより速くするための概念の証明 Apr 16, 2025 am 10:38 AM

新しいプロジェクトの開始時に、SASSコンピレーションは瞬く間に起こります。これは、特にbrowsersyncとペアになっている場合は素晴らしい気分です。

See all articles