ホームページ >ウェブフロントエンド >CSSチュートリアル >誤字ユニットをSASSで変換します
SASS:タイポグラフィーユニット変換を合理化します
この記事では、SASSがタイポグラフィーユニット変換を単純化する方法を調査し、手動計算の必要性を排除します。 ピクセル、EMS、パーセンテージ、ポイント間の変換を処理するSASS関数を構築します。
歴史的に、Web開発者はしばしば固定ピクセルベースのレイアウトに依存していました。 レスポンシブデザインは、より柔軟なアプローチを導きましたが、タイポグラフィユニット(ピクセル、EMS、パーセンテージ)間の変換は依然として一般的な課題です。 これには、多くの場合、退屈な手動変換またはコンサルティング変換チャートが含まれます。 このチュートリアルは、これらの変換を自動化し、時間を節約し、エラーを削減するためのSASS機能を示しています。
前提条件:デフォルトのフォントサイズをCSSで定義する必要があります(通常は16px)。 このチュートリアルでは、16pxのデフォルトを想定しています
関数は、ピクセル(PX)、EMS(EM)、パーセンテージ(%)、およびポイント(PT)をサポートします。SASS関数:
関数は3つの引数を取ります:
:変換する数値値。
:値の現在の単位(px、em、%、pt)。convert
$value
$currentUnit
使用法:$convertUnit
<code class="language-sass">@function convert($value, $currentUnit, $convertUnit) { @if $currentUnit == px { @if $convertUnit == em { @return $value / 16 + 0em; } @else if $convertUnit == % { @return percentage($value / 16); } @else if $convertUnit == pt { @return $value * 1.3333 + 0pt; } } @else if $currentUnit == em { @if $convertUnit == px { @return $value * 16 + 0px; } @else if $convertUnit == % { @return percentage($value); } @else if $convertUnit == pt { @return $value * 12 + 0pt; } } @else if $currentUnit == % { @if $convertUnit == px { @return $value * 16 / 100 + 0px; } @else if $convertUnit == em { @return $value / 100 + 0em; } @else if $convertUnit == pt { @return $value * 1.3333 * 16 / 100 + 0pt; } } @else if $currentUnit == pt { @if $convertUnit == px { @return $value * 1.3333 + 0px; } @else if $convertUnit == em { @return $value / 12 + 0em; } @else if $convertUnit == % { @return percentage($value / 12); } } }</code>
この関数は、次のことを追加することでさらに強化できます REMユニットのサポート。
無効な入力のためのエラー処理。<code class="language-sass">.foo { font-size: convert(16, px, em); // Returns 1em } .bar { font-size: convert(100, %, px); // Returns 16px }</code>
デフォルトのユニット設定。
よくある質問(FAQ):
.scss
.css
sassのタイポグラフィーユニット:px
ビルトインSASS関数を使用するか、上記のようなカスタム関数を作成します。
rem
pt
:%
。以上が誤字ユニットをSASSで変換しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。