フロントエンドブラウザのフォントサイズが12px未満のソリューション

フロントエンドブラウザのフォントサイズが12px未満のソリューション

序文

最近プロジェクトに取り組んでいたとき、UI デザインのフォント サイズは 10 ピクセルでした。レンダリングを見ると、フォント サイズがまだかなり大きいことがわかりました。12 ピクセルに変更しても、フォント サイズは同じままでした。14 ピクセルに変更すると、フォント サイズが大きくなりました。パターンを見つけて、ユーザーにフォントをはっきりと見せるために、ブラウザが最小設定を 12 ピクセルに設定していることに気付きました。何をするか?デザインは10pxですか?

最終的な効果図は次のようになります。

レンダリング

レンダリング

レンダリング

Baidu で検索したところ、専門家はtransform: scale(0.5)を使用すると要件を満たすことができると言っていました。しかし、実際に使用してみると、div 全体の幅と高さが拡大縮小され、要件を満たしていないことがわかりました。

逆に、赤い点とテキストを 2 つの div に配置することもできます。赤い点は幅と高さを制御し、必要に応じて transform: scale を使用してフォントを縮小できます。

具体的な実装コードは次のとおりです。

<div v-if="cartNum>=1" クラス="cartData">
     <div class="Num" v-if="cartNum>=1&&cartNum<=99">{{cartNum}}</div>
     <div class="Num" v-else-if="cartNum>99">99+</div>
</div>

CSS部分:

.cartData{
    高さ: .75rem;
    最小幅: .75rem;
    境界線の半径: .375rem;
    背景: 赤;
    色: 白;
    テキスト配置: 中央;
    行の高さ: .75rem;
  }
  .数値{
    フォントサイズ: 20px;
    -webkit-transform: スケール(0.5);
    }

上記のフォント サイズは 14*0.8 = 11.2 px ですが、必要に応じて調整できます。

このように記述するだけでは IE および FF と互換性がないため、互換性のある別の記述方法を次に示します。

.数値{
    フォントサイズ: 14px;
    -webkit-transform: スケール(0.8);
 }
.フォントサイズ{
  フォントサイズ: 14*0.8px;
}

知らせ:

transform:scale()属性は、幅と高さを定義できる要素のみを拡大縮小できますが、インライン要素には幅と高さがありません。display display:inline-block;を追加できます。

要約する

上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。

<<:  WeChatアプレットでvantフレームワークを使用するための具体的な手順

>>:  Layuiテーブルは指定された行のラジオボタンを選択し、その行の実装コードまでスクロールします。

推薦する

JavaScript 配列と非配列オブジェクトのディープ クローンとシャロー クローンの原則の詳細な説明

目次シャロークローニングとディープクローニングとは何ですか? 1. アレイのクローンを作成する1.1...

JS を使用してファイルを操作する (FileReader は --node の fs を読み取ります)

目次JS はファイルを読み取る FileReader書類イベントとメソッド基本的な使い方イベント処理...

Linux ドメイン ネーム サービス DNS 設定方法

DNSとはDNS の正式名称は Domain Name System で、ドメイン名解決システムを意...

この記事はPReact10.5.13のソースコードを理解するのに役立ちます

目次render.js 部分create-context.js 部分差分部分Reactのソースコード...

vue プロジェクトのデプロイと Nginx でのプロキシ設定の問題の分析

1. nginxをインストールして起動する # nginxをインストールする sudo apt-ge...

Vue で Axios カプセル化を使用するための完全なチュートリアル

序文現在、プロジェクトでは、Axios ライブラリが HTTP インターフェース リクエストによく使...

リアクトルーティングガード(ルーティングインターセプション)の実装

React は Vue とは異なります。ルートにメタ文字を設定することでルートインターセプションを実...

Tomcat でタイムアウトしたセッションを監視および削除する方法

序文偶然、30 分の Tomcat セッション時間は、セッションが作成された後、30 分間のみ有効で...

DevUI で独自の Angular コンポーネント ライブラリを構築する方法

目次序文コンポーネントライブラリの作成主要な構成の変更ディレクトリレイアウトの調整ライブラリ構築のた...

MySQL 8.0.25 のインストールと設定方法のグラフィックチュートリアル

MySQL 8.0.25の最新のダウンロードとインストールのチュートリアルは参考になります。具体的な...

mysql 起動時の ERROR 2003 (HY000) の問題を解決する方法

1. 問題の説明MYSQL を起動すると、図に示すように、「ERROR 2003 (HY000): ...

純粋な CSS3+DIV で小さな三角形の境界線効果を実現するためのサンプル コード

具体的なコードは次のとおりです。 HTMLコードは次のとおりです <div class=&qu...

div が contentEditable=true に設定されている場合、コンテンツをリセットした後にカーソルを配置することはできません。

最近、絵文字にコメントする機能が必要なコメント機能に取り組んでいたため、 contentEditab...

JavaScript を使用して簡単なアルゴリズムを実行する方法

目次質問1件2つの方法3 実験結果と考察質問1件ご存知のとおり、 Pycharm 、 IDLE 、 ...

Vue ライフサイクルの紹介とフック関数の詳細な説明

目次Vueライフサイクルの紹介とフック機能VUEライフサイクルフックVue ライフサイクルの紹介作成...