HTML + CSSナレッジポイント-第3週

1.ポジショニング

レイアウト方法:ドキュメントフロー、フローティング、レイヤーレイアウト(配置)

  • 3種類のポジショニング:相対ポジショニング、絶対ポジショニング、固定ポジショニング

ポジショニングエレメントのレベル設定:ポジショニングを設定したエレメントは、z-index属性で調整できます。デフォルト値は0です。数値が大きいほどレベルが高くなります。数値は同じです。レベルはタグの順序に関連します。タグが低いほど、レベルが高くなります。高

1.相対的な位置付け(息子はもはや父親ではありません)

  • 位置:相対;

  • ドキュメントフローを離れず、ドキュメント内の元の位置を保持します

  • オフセット参照位置:ドキュメントフロー内の要素自体の元の位置

2.絶対ポジショニング

  • 位置:絶対;

  • ドキュメントフローから抜け出し、ドキュメント内の元の位置を保持しないでください

  • オフセット基準位置(親の配置):絶対位置の要素に最も近い位置属性を持つ祖先要素。そのような要素がない場合は、本体を基準にして配置されます。

3.固定ポジショニング

  • 位置:固定;

  • 固定配置要素はドキュメントフローから分離され、ドキュメントフローの元の位置は保持されません。

  • オフセット参照位置:ブラウザの表示領域

定位偏移属性偏移属性:

   left  :   正右,负左

   right :  正左,负右

   top   :  正下,负上

   bottom:  正上,负下

left/top和right/bottom通常使用一个,如果同时使用left/top生效

脱离文档流的元素不会自动占满一行,宽度默认是由内容撑开

4.静的ポジショニング

  • 位置:静的;

  • ポジショニングなし、オフセット属性が無効です(左/右/上/下)

  • レベル(z-index)も無効です

第二に、フィレット

1.省略形の属性

   border-radius:10px;  四个角圆角半径统一

   border-radius:10px 20px;  左上和右下   右上和左下

   border-radius:10px 20px 30px;  左上   右上和左下   右下

   border-radius:10px 20px 30px 40px;  左上   右上   右下  左下  

   border-radius:50%;---是个圆

2.分解属性

   border-top-left-radius: 20px;

   border-top-right-radius: 40px;

   border-bottom-left-radius: 60px;

   border-bottom-right-radius: 80px;

3、変形変換

   简写属性
   transform:rotate(-30deg) scale(0.5,2);

1.回転する

   transform:rotate(30deg); 正数顺时针,负数逆时针  

2.ズーム

   transform:scale(n);  水平和垂直同时缩放 n 取值 0-1之间缩小 , n>1 就是放大
   
   transform:scale(n-x,n-y);  n-x:水平方向的缩放值,n-y垂直缩放值

4、キーフレームアニメーション

1.アニメーションのキーフレームを定義します

   @keyframes move-动画名称{
        0%{}
        
        25%{}

        50%{}

        75%{}

        100%{}
   }

2.アニメーションを呼び出す

   简写属性
   animation: move 3s linear infinite alternate;
   动画属性
   animation: animation-name animation-duration animation-iteration-count  animation-timing-function  animation-delay  animation-direction;
  • アニメーション名:呼び出されたアニメーションの名前

  • アニメーション時間:アニメーションプロセス全体に必要な時間s(秒)/ ms(ミリ秒)

  • Animation-iteration-count:アニメーションが実行された回数n /無限(無制限の回数)

  • アニメーション-タイミング-機能:アニメーション速度曲線

    • イーズスロー-ファスト-スロー

    • 線形均一速度

    • イーズインスローファスト

    • イーズアウトファストスロー

    • イーズインアウトスロー-ファスト-スロー

    • 立方ベジエ(.08、.73、.42、.93)ベジェ曲線https://cubic-bezier.com/

  • アニメーション遅延:アニメーション遅延時間s / ms

  • アニメーション方向:アニメーションの方向が交互になります(順番が逆になります)

  • アニメーション-塗りつぶしモード:アニメーションの最後で転送します(最後で停止します)

5、トランジションアニメーション

トランジション使用シーン:通常、要素が通常の状態にあり、マウスの状態(:hover)プロパティが変更されたときにスムーズなトランジション効果に使用されます

   动画属性
   transition:transition-property transition-duration transition-timing-function transition-delay;
  • 遷移プロパティ:遷移プロパティ名、すべて(変更されたすべてのプロパティが遷移されます)

  • 遷移時間:遷移時間s / ms

  • 遷移タイミング機能:遷移速度曲線、値はキーフレームアニメーションと同じです

  • 遷移遅延:遷移遅延時間s / ms

   多个属性过渡
   transition: width 2s linear,height 4s ease,...;
  • 使用例
情况1
   .box{
        width: 100px;
        transition:all 0.5s linear;<!-- 鼠标脱离时的过渡 -->
   }
   .box:hover{
        width: 200px;
        transition:all 2s linear;  <!-- 鼠标悬停时的过渡 -->
   }
情况2
   .box{
        width: 100px;
            <!-- 鼠标脱离时没有过渡效果 -->
   }
   .box:hover{
        width: 200px;
        transition:all 2s linear;  <!-- 鼠标悬停时的过渡 -->
   }

情况3
   .box{
        width: 100px;
        transition:all 0.5s linear;<!-- 鼠标悬停和脱离时都有过渡,并且效果相同 -->
   }
   .box:hover{
        width: 200px;
   } 
  • キーフレームアニメーションとトランジションアニメーションの違い
キーフレームアニメーション トランジションアニメーション
アニメーションは複数の状態に設定できます アニメーションには2つの状態(開始と終了)しかありません
複数回実行可能(無制限) 一度トリガーして一度実行する
自動的に実行することはできません。疑似クラスによってトリガーする必要があります 繰り返し実行されません

六、影

1.ボックスシャドウ

   属性
   box-shadow:x-shadow y-shadow blur spread color inset;

   - x-shadow : 必需,水平阴影位置 ,正数向右偏移,负数向左偏移

   - y-shadow : 必需,垂直阴影位置 ,正数向下偏移,负数向上偏移

   - blur :  可选,阴影的模糊距离

   - spread: 可选,阴影的扩展尺寸

   - color:  可选,阴影的颜色

   - inset:  可选,不设置表示外阴影,设置inset表示内阴影 

   多组阴影
   box-shadow:x-shadow y-shadow blur spread color inset,x-shadow y-shadow blur spread color inset, ... ;

2.テキストシャドウ

   text-shadow:x-shadow y-shadow blur color;

   - x-shadow : 必需,水平阴影位置 ,正数向右偏移,负数向左偏移

   - y-shadow : 必需,垂直阴影位置 ,正数向下偏移,负数向上偏移

   - blur: 可选,阴影的模糊距离

   - color:可选,阴影的颜色 默认和文字颜色相同

   多组阴影:x-shadow y-shadow blur color,x-shadow y-shadow blur color,...;

セブン、三角形と矢印

1.小さな三角形

実現のアイデア:ボックスの幅と高さを0に設定し、1つの境界線の色を維持し、他の境界線を透明に設定します

   .box{
       width: 0px;
       height: 0px;
       border: 50px solid;
       border-color: red transparent transparent;
    }

2.小​​さな矢印

実現のアイデア:2つの三角形を実現し、配置によって2つの三角形を部分的にオーバーラップさせ、前の三角形の色を背景と同じ色に設定します。

<div class="arrow1"></div>
   .arrow1{
           position: relative;
           width: 0px;
           height: 0;
           border: 50px solid;
           border-color: red transparent transparent;
           margin-top: 10px;
    }
   .arrow1::after{
           position: absolute;
           left: -50px;
           top: -55px;
           content: '';
           width: 0px;
           height: 0px;
           border: 50px solid;
           border-color: #fff transparent transparent;
   }

8.透明で互換性があります

1. rgba()モードの色:テキストと背景の色を設定できます(IEの下位バージョンとは互換性がありません)

要素の背景を透明に設定すると、内部のコンテンツには影響しません

2.不透明度:0-1; 0完全に透明、1不透明、0.X半透明(以前のIEバージョンとは互換性がありません)

要素全体が透明で、要素自体と内部のコンテンツがすべて透明です

3. filter:alpha(opacity = 50)IE低バージョンブラウザの特別な透明フィルター。効果は不透明度属性と同等です。0は完全に透明、100は不透明を意味します。

9つのセンタリングスキル

1.親のサイズは不明であり、子の要素のサイズは既知です

   .outer{
        position:relative;  /*父元素相对定位*/
   }
   .inner{
        width:300px;
        height:200px;
        position:absolute;  /* 子元素绝对定位*/
        left:50%;   /*盒子偏右*/
        top:50%;    /*盒子偏下*/
        margin-left:-150px;   /* 设置为子元素宽度的一半(负值),往左移*/
        margin-top:-100px;  /* 设置为子元素高度的一半(负值),往上移*/
  }

2.親サイズと子要素サイズの両方が不明な場合があります

  .outer{
        position:relative;  /*父元素相对定位*/
  }
  .inner{
        position:absolute;
        left:0;
        right:0;
        top:0;
        bottom:0;
        margin:auto;
        width:300px;
        height:200px;
  }

10.フローティングとポジショニングの比較

レイアウト方法:ドキュメントフロー、フローティング、レイヤーレイアウト(配置)

  • ドキュメントフロー:独自の属性に応じた要素の配置を指し、ブロック要素は上から下に垂直に配置され、行の要素は左から右に配置されます
  • テキストフロー:要素がページに表示される順序
フローティング(水平レイアウト) ポジショニング(レイヤーレイアウト)
通常、水平の複数列レイアウト(左と右、左、中央、右、4列、5列)を実装するために使用されます 通常、要素間の固定位置関係、または被覆関係を実現するために使用されます
すべての要素(ブロックレベル、インライン、インラインブロック)をフロートさせることができます すべての要素(ブロックレベル、インライン、インラインブロック)を配置できます
float:left / right;ドキュメントフローから要素を作成します position:absolute / fixed;ドキュメントフローから要素を作成します
フローティング要素は、テキストフローからではなく、ドキュメントフローから分離されます(テキスト、画像、およびフォーム要素はフローティング要素によってカバーされません) 配置された要素は、ドキュメントフローとテキストフローの両方から分離されます
  • ドキュメントフロー外の要素の特性
インラインレベルとブロックレベルを区別しなくなりました
デフォルトの幅と高さはコンテンツでサポートされています
幅と高さ、すべてのボックスモデル属性を設定できます

11. CSSウィザードマップ(スプライトマップ)

これは、英語ではCSSスプライト、「cssテクスチャポジショニング」または「cssイメージスティッチング」と呼ばれます。
原則:いくつかの小さな写真を写真に配置し、背景を通して紹介し、背景の配置を使用して表示されるアイコンを調整します。

一部の小さなアイコンには適していますが、大きな画像の背景には適していません。

利点 不利益
Webページのhttpリクエストの数を減らし、ページのパフォーマンスを向上させる コンテナのサイズを指定する必要があります
画像の命名の問題を減らす 背景位置の値も正確に計算する必要があります
スタイルを簡単に変更 比較的面倒

12.PS操作

1、移动工具  :用来定位图层,或者移动图层

2、历史记录 : 用来返回前面一些操作

  - 撤回  ctrl+z   撤回多步  ctrl+shift+z

  - 直接返回初始状态  F12

3、吸管工具: 用来取页面的色值

4、标尺工具:用来量尺寸

5、放大镜工具: 用来放大或者缩小画布 

  - ctrl+ 加号  放大

  - ctrl+ 减号  缩小    

  - 按住alt  + 鼠标滚轮 向上滚动放大  向下滚动缩小

6、抓手工具:用来移动整个画布  

  - 按住空格键 + 鼠标左键按下拖拽

7、文字工具:添加文字图层,或者选取文字图层,查看文本样式信息

8、保存切片:

 - 存储为web所用格式,快捷键:ctrl+alt+shift+s

 - 设置切片格式和品质

 - 切片选项:

    - 所有切片(划分的切片 + 整个页面剩余的部分)

    - 用户切片(指的是自己划的切片)

    - 选中的切片  (指定部分切片保存)

9、ctrl+T  : 自由变换工具,改变图层大小

1.Webページの一般的な画像形式

  • jpgは色が豊富で、ファイルが比較的小さく、非可逆圧縮、ストレージ品質の低下が繰り返されます使用シナリオ-広告/製品画像/写真

  • gifはアニメーション画像をサポートし、ファイルは小さく、256色のみをサポートし、シンプルな小さなアイコンアイコン/動画をサポートします

  • pngは透明度をサポートし、シンプルな画像はサイズが小さく、カラフルな画像はサイズが大きく、アニメーション画像はサポートされていませんが、透明な画像が適しています

  • webpは、透明度、アニメーション、小さなファイル、高品質、ブラウザの互換性の低さをサポートしており、その形式をサポートするデバイスでのみ表示できます

2.透明なアイコンをカットします

  • 方法1:

    • レイヤーへの配置-ディスプレイを透明として削除し、最下層のレイヤー6レイヤー0も非表示にします

    • スライス保存png24半透明/完全透明png8は完全透明

  • 方法2:

    • 小さなアイコンをコピーし、新しいペーストを作成し、背景を削除して透明なアイコンを表示します。新しいアイコンを作成するときは、ctrl a select all + ctrl c copy + ctrl nを選択し、透明として設定します。

3.スプライトマップを作成します

  • 小さなアイコンをコピー(ctrl a + ctrl c)レイヤーをコピー(ctrl j)-レイヤーブレンドオプションをクリック-カラーオーバーレイ-アイコンの色を設定

  • レイヤーグループctrl + G

  • レイヤーを組み合わせるctrl + E

4.静的な大きなバナー画像の最適化

  • 重要なコンテンツのimgタグを使用し、変更したパターンの背景画像を使用します。中央部分を画像にカットし、両側の残りの部分を大きな背景画像として使用します。

  • 真ん中の部分は、悪いネットワーク状態と大きな画像要求のタイムアウトを防ぐために、いくつかの小さなスライスに分割することができます

おすすめ

転載: blog.csdn.net/qq_41008567/article/details/108803603