CSS の 2D 変換を使用すると、移動、回転、拡大縮小、変形などの基本的な変換操作を 2 次元空間で実行できます。変換された要素は絶対配置された要素に似ており、周囲の要素には影響しませんが、周囲の要素と重なることができます。違いは、変換された要素がページ内の変換前のスペースを引き続き占有することです。 2D 変換は、CSS の transform プロパティと次の変換関数を使用して実現できます。
1. 翻訳()translate() 関数は、指定されたパラメータに従って要素を水平方向 (X 軸) または垂直方向 (Y 軸) に移動するために使用されます。関数の構文は次のとおりです。 翻訳(tx, ty) ここで、tx は要素が水平 (X 軸) 方向に移動する距離に対応し、ty は要素が垂直 (Y 軸) 方向に移動する距離に対応します。パラメータ ty は無視することができ (デフォルトは 0)、両方のパラメータを負の値にすることができます。 [例] translate() 関数を使用して、指定した要素を移動します。 <!DOCTYPE html> <html> <ヘッド> <スタイル> div { 幅: 100ピクセル; 高さ: 100px; 背景色: #CCC; 変換: translate(100px, 10px); } </スタイル> </head> <本文> <div></div> </本文> </html> 実行結果は下の図に示されています。 図: translate() 関数のデモンストレーション 要素を水平方向または垂直方向に移動したいだけの場合は、translateX() (要素を水平方向に移動) または translateY() (要素を垂直方向に移動) を使用することもできます。translateX() 関数と translateY() 関数はどちらも、1 つのパラメータのみを指定する必要があります。例: translateX(100px); /* translate(100px, 0px); と同等 */ translateY(10px); /* translate(0px, 10px); と同等 */ 2. 回転()rotate() 関数は、要素を指定された角度で回転させるために使用されます。関数の構文は次のとおりです。 回転する(a) パラメータ a は、要素を回転する角度を示します。a が正の値の場合は時計回りの回転を示し、a が負の値の場合は反時計回りの回転を示します。 [例] rotate() 関数を使用して要素を回転します。 <!DOCTYPE html> <html> <ヘッド> <スタイル> div { 幅: 100ピクセル; 高さ: 100px; 背景色: #CCC; マージン: 20px 0px 0px 20px; 変換: 回転(45度); } </スタイル> </head> <本文> <div></div> </本文> </html> 実行結果は下の図に示されています。 図: rotate() 関数のデモンストレーション 3. スケール()scale() 関数は、指定された要素を拡大または縮小するために使用されます。関数の構文形式は次のとおりです。 スケール(sx, sy) ここで、sx は水平スケーリング比を表し、sy は垂直スケーリング比を表します。さらに、パラメータ sy は省略可能で、そのデフォルト値は sx と等しくなります。 [例] 指定された要素を拡大縮小するには、scale() 関数を使用します。 <!DOCTYPE html> <html> <ヘッド> <スタイル> div { 幅: 100ピクセル; 高さ: 100px; 背景色: #CCC; 変換: スケール(0.7); } </スタイル> </head> <本文> <div></div> </本文> </html> 実行結果は下の図に示されています。 図: scale() 関数のデモンストレーション ヒント: scale() で指定されたパラメータ値が -1 ~ 1 の範囲外の場合、要素は拡大されます。パラメータ値が -1 ~ 1 の範囲内の場合、要素は縮小されます。 translate() 関数と同様に、要素のサイズを水平方向のみ、または垂直方向のみに拡大縮小する場合は、scaleX() (要素を水平方向に拡大縮小) 関数と scaleY() (要素を垂直方向に拡大縮小) 関数を使用することもできます。 scaleX() 関数と scaleY() 関数には 1 つの引数のみが必要です。次に例を示します。 scaleX(0.5); /* scale(0.5, 1); と同等 */ scaleY(0.5); /* scale(1, 0.5); と同等 */ 4. スキュー()skew() 関数は、要素を水平方向 (X 軸) と垂直方向 (Y 軸) に傾けて歪ませるために使用されます。関数の構文は次のとおりです。 skew(ax, ay) パラメータ ax は要素の水平歪み角度を表し、パラメータ ay は要素の垂直歪み角度を表します。また、パラメータ ay は省略可能です。パラメータ ay を省略した場合、デフォルト値は 0 になります。 [例] skew() 関数を使用して、指定した要素を歪めます。 <!DOCTYPE html> <html> <ヘッド> <スタイル> div { 幅: 100ピクセル; 高さ: 100px; 背景色: #CCC; マージン: 20px 0px 0px 10px; 変換: skew(-15度, 20度); } </スタイル> </head> <本文> <div></div> </本文> </html> 実行結果は下の図に示されています。 図: skew() 関数のデモンストレーション また、要素を水平方向のみ、または垂直方向のみに歪ませたい場合は、skewX() (要素を水平方向に拡大縮小) 関数と skewY() (要素を垂直方向に拡大縮小) 関数を使用して完了することもできます。 skewX() 関数と skewY() 関数には 1 つの引数のみが必要です。次に例を示します。 skewX(15deg); /* skew(15deg, 0deg); と同等 */ skewY(15deg); /* skew(0deg, 15deg); と同等 */ 5. 行列()matrix() 関数は、skew()、scale()、rotate()、translate() 関数の省略形として考えることができます。すべての 2D 変換操作は、matrix() 関数を通じて同時に定義できます。関数の構文形式は次のとおりです。 行列(a, b, c, d, tx, ty) matrix() 関数の 6 つのパラメータは、scaleX()、skewY()、skewX()、scaleY()、translateX()、および translateY() 関数に対応します。matrix() を使用して、次のようなさまざまな 2D 変換操作を実装できます。
[例] matrix() 関数を使用して、要素に対して 2D 変換操作を実行します。 <!DOCTYPE html> <html> <ヘッド> <スタイル> div { 幅: 100ピクセル; 高さ: 100px; 背景色: #CCC; マージン: 20px 0px 0px 10px; フロート: 左; } 。1つ { 変換: 行列(0.866, 0.5, -0.5, 0.866, 0, 0); } 。二 { 左マージン: 35px; 変換: 行列(0.586, 0.8, -0.8, 0.686, 0, 0); } 。三つ { 左マージン: 40px; 上マージン: 25px; 変換: 行列(0.586, 0.8, -0.8, 0.866, 0, 0); } .4 { 変換: 行列(0.586, 0.8, -0.8, 0.586, 40, 30); } </スタイル> </head> <本文> <div class="one"></div> <div class="two"></div> <div class="three"></div> <div class="4"></div> </本文> </html> 実行結果は下の図に示されています。 図: matrix() 関数のデモンストレーション これで、CSS で実装される 5 つの一般的な 2D 変換に関するこの記事は終了です。CSS 2D 変換の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 |
<<: MySQL トランザクションと分離レベルの基本原理の簡単な分析
>>: HTML から PDF への変換事例の概要 (複数の画像を推奨)
2つの状況がある1. 開始時間と終了時間が同じボックス内にあります(今月のみ限定) 2. 開始時間と...
序文MySQL では、複数テーブル結合クエリは非常に一般的な要件です。複数テーブルクエリを使用する場...
任意のテキスト エディターを開き、次のコードをコピーして、たとえば SomeFilename.htm...
この記事では、Vueでアップロードされた画像に透かしを追加する具体的な実装コードを参考までに共有しま...
Dockerはますます普及しています。環境を軽量かつ柔軟に分離し、容量を拡張し、運用保守管理を容易に...
この記事の例では、検証コードの動的干渉を実装するためのjsの具体的なコードを共有しています。具体的な...
イメージを作成する方法は 3 つあります。既存のイメージに基づいてコンテナを作成する、ローカル テン...
目次1. 当初の需要2. 解決策3. 運河の導入と設置運河の仕組み建築インストール4. 検証1. 当...
Ubuntu 18.04.4 に MySQL をインストールするプロセスを見てみましょう。内容は次の...
1. 括弧の役割1.1 角括弧 [ ]属性名が角括弧で囲まれている場合、右側には式の値が割り当てられ...
この記事では、パーセンテージバーを実現するためのVueの具体的なコードを参考までに共有します。具体的...
目次1. 次のコードはwatchの簡単な使用法です2. 即時監視3. ハンドラメソッド4. 深い属性...
PHP7が出たので、最新バージョンのファンとしては、早速アップグレードして体験してみました。しかし...
JSを使用して、参考用の簡単な計算機を完成させます。具体的な内容は次のとおりです。要件: 入力値は数...
一般的には、左側にメニューがあった後、ページの上部に履歴タブ メニューを追加する必要があります。他の...