CSS における位置決めとは、Web ページ上の要素の位置を指定することを意味し、通常はposition 属性を使用して設定されます。 CSS には、1. 静的配置 (static)、2. 絶対配置 (absolute)、3. 相対配置 (relative)、4. 固定配置、5. 固定配置の 5 つの配置方法があります。
このチュートリアルの動作環境: Windows 7 システム、CSS3&HTML5 バージョン、Dell G3 コンピューター。
CSS における位置決めとは、Web ページ上の要素の位置を指定することを意味し、通常はposition 属性を使用して設定されます。
CSS には 5 つの配置メソッドがあります。つまり、position 属性には主に 5 つの値があります。
静的位置決め (静的)
絶対位置決め (絶対)
相対位置決め (相対) ) ) )
固定配置 (fixed)
スティッキー配置 (sticky)
以下これらの 5 つの値を紹介します。最後のスティッキーは 2017 年のブラウザーでのみサポートされており、この記事ではこれに焦点を当てます。
static 属性値
static
は、position
属性のデフォルト値です。 Position 属性が省略された場合、ブラウザは要素が静的に配置されているとみなします。
このとき、ブラウザはソースコードの順序に従って各要素の位置を決定しますが、これを「通常のページフロー」(通常のフロー)と呼びます。各ブロック レベルの要素は独自のブロックを占有し、要素間に重複はありません。この位置が要素のデフォルトの位置です。
静的配置による要素の位置はブラウザによって独立して決定されるため、現時点では、top、bottom、left、right の 4 つの属性は無効であることに注意してください。 。
relative、absolute、fixed
relative、absolute、fixed の 3 つの属性値には 1 つの共通点があります。特定の基点を基準にして配置されている場合、唯一の違いは基点が異なることです。したがって、基本的なポイントを理解していれば、これら 3 つの属性値を習得するのは簡単です。
これら 3 種類の配置は他の要素の位置に影響を与えないため、要素間に重複が生じる可能性があります。
relative 属性値
relative は、デフォルトの位置 (つまり、静的な位置) を基準にしてオフセットされていることを示します。つまり、配置基点は要素のデフォルトの位置です。
div { position: relative; top: 20px; }上記のコードでは、div 要素はデフォルトの位置から下に 20 ピクセル (つまり、上から 20 ピクセル) オフセットされています。
absolute 属性値
absolute は、上位要素 (通常は親要素) に対してオフセットされること、つまり位置を意味します。基点は親要素です。 これには重要な制限があります。配置基準点 (通常は親要素) を静的に配置することはできません。そうでない場合、配置基準点は Web ページ全体のルート要素 html になります。さらに、絶対配置は、上、下、左、右の 4 つの属性でも使用する必要があります。/* HTML 代码如下 <div id="father"> <div id="son"></div> </div> */ #father { positon: relative; } #son { position: absolute; top: 20px; }上記のコードでは、親要素が相対配置、子要素が絶対配置となっているため、子要素の配置基点は親要素となり、親要素の上部から下方向に位置します。オフセットは 20 ピクセルです。親要素が静的に配置されている場合、上記の例の子要素は Web ページの上部から 20 ピクセル下にオフセットされます。 絶対配置された要素は「通常のページ フロー」では無視されることに注意してください。つまり、「通常のページ フロー」では、この要素が占めるスペースはゼロであり、周囲の要素は影響を受けません。
fixed 属性値
fixed は、ビューポート (ビューポート、ブラウザ ウィンドウ) を基準にしてオフセットされていること、つまり位置を意味します。基点はブラウザ ウィンドウです。これにより、あたかも Web ページに固定されているかのように、ページがスクロールしても要素の位置は変化しません。div { position: fixed; top: 0; }上記のコードでは、div 要素は常にビューポートの上部にあり、Web ページがスクロールしても変化しません。
sticky 属性値
sticky は、前の 4 つの属性値とは異なります。相対と固定の組み合わせと同様に、動的な効果を生成します。相対的な場合もあります。位置決め(位置決め基点は独自のデフォルト位置)、場合によっては自動的に固定位置決め(位置決め基点はビューポート)になります。因此,它能够形成"动态固定"的效果。比如,网页的搜索工具栏,初始加载时在自己的默认位置(relative定位)。
页面向下滚动时,工具栏变成固定位置,始终停留在页面头部(fixed定位)。
等到页面重新向上滚动回到原位,工具栏也会回到默认位置。
sticky生效的前提是,必须搭配top、bottom、left、right这四个属性一起使用,不能省略,否则等同于relative定位,不产生"动态固定"的效果。原因是这四个属性用来定义"偏移距离",浏览器把它当作sticky的生效门槛。
它的具体规则是,当页面滚动,父元素开始脱离视口时(即部分不可见),只要与sticky元素的距离达到生效门槛,relative定位自动切换为fixed定位;等到父元素完全脱离视口时(即完全不可见),fixed定位自动切换回relative定位。
请看下面的示例代码。(注意,除了已被淘汰的 IE 以外,其他浏览器目前都支持sticky。但是,Safari 浏览器需要加上浏览器前缀-webkit-。)
#toolbar { position: -webkit-sticky; /* safari 浏览器 */ position: sticky; /* 其他浏览器 */ top: 20px; }
上面代码中,页面向下滚动时,#toolbar的父元素开始脱离视口,一旦视口的顶部与#toolbar的距离小于20px(门槛值),#toolbar就自动变为fixed定位,保持与视口顶部20px的距离。页面继续向下滚动,父元素彻底离开视口(即整个父元素完全不可见),#toolbar恢复成relative定位。
sticky 的应用
sticky定位可以实现一些很有用的效果。除了上面提到"动态固定"效果,这里再介绍两个。
堆叠效果
堆叠效果(stacking)指的是页面滚动时,下方的元素覆盖上方的元素。下面是一个图片堆叠的例子,下方的图片会随着页面滚动,覆盖上方的图片。
查看 demo:https://jsbin.com/fegiqoquki/edit?html,css,output
HTML 代码就是几张图片。
<div><img src="/static/imghwm/default1.png" data-src="picCSSにおける位置決めは何を意味しますか" class="lazy" alt="CSSにおける位置決めは何を意味しますか" ></div> <div><img src="/static/imghwm/default1.png" data-src="pic2.jpg" class="lazy" alt="CSSにおける位置決めは何を意味しますか" ></div> <div><img src="/static/imghwm/default1.png" data-src="pic3.jpg" class="lazy" alt="CSSにおける位置決めは何を意味しますか" ></div>
CSS 代码极其简单,只要两行。
div { position: sticky; top: 0; }
它的原理是页面向下滚动时,每张图片都会变成fixed定位,导致后一张图片重叠在前一张图片上面。
详细解释可以看:https://dev.to/vinceumo/slide-stacking-effect-using-position-sticky-91f
表格的表头锁定
大型表格滚动的时候,表头始终固定,也可以用sticky实现。
查看 demo:https://jsbin.com/decemanohe/edit?html,css,output
CSS 代码也很简单。
th { position: sticky; top: 0; }
需要注意的是,sticky必须设在
详细解释可以看:https://css-tricks.com/position-sticky-and-table-headers/
(学习视频分享:css视频教程)
以上がCSSにおける位置決めは何を意味しますかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

tonavigatereAct'somplexEcosystemively、理解を理解し、認識していることを認識していることを認識しているandweakness、およびIntegreatemtoemtoemtoemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemtemotereconceptate、その後、勾配内で測定する

RactuseSeSeSeSeSeSeSeSpiffictifideidifiedItemsbyprovidingastableidentitytoeeedelement.1)keysallowReactTotTotTotTotTotTotTotTotTotTotTotTotTotTotTotRACKESOUTRE-RENDERINGTHEENTERELIST.2)chookiniqueandstablekeys、avolididingArrayIndices.3)reforceAsificlySificlySiflovedobrovesiondanc

KeysinReactarecrucialforoptimizingTherenderingProcessandDynamicListseffective.tospotandfixkey-relatedissues:1)adduniquekeystolistiTemstoavoidsissusisus、2)useuniqueidideididifiersfromdateadceSofofordiceys、3)

Reactの一元配置データバインディングにより、データが親コンポーネントから子コンポーネントに流れることが保証されます。 1)データは単一に流れ、親コンポーネントの状態の変化は子コンポーネントに渡すことができますが、子コンポーネントは親コンポーネントの状態に直接影響することはできません。 2)この方法により、データフローの予測可能性が向上し、デバッグとテストが簡素化されます。 3)制御されたコンポーネントとコンテキストを使用することにより、一方向のデータストリームを維持しながら、ユーザーの相互作用とコンポーネント間通信を処理できます。

keysinReactarecrucialforeffiencedomupdatessandRecOnciliation.1)選択可能でユニークな、そして類似のフルキーなど、Itemids.2)fornestedLists、useuniquekeysateachlevel.3)

useState()uscrucialforoptimizingRectperformanceduetuitsoitsimpactonre-rendersandupdates.tooptimize:1)useusecallbacktomoize funtionsandpreventunnederireRenders.2)

コンテキストとユーザーを使用して、大規模なReactアプリケーションで州の管理を簡素化できるため、状態を共有します。 1)プロップドリルを減らす、2)より明確なコード、3)グローバルな状態を管理しやすい。ただし、パフォーマンスのオーバーヘッドと複雑さのデバッグに注意してください。コンテキストと最適化技術の合理的な使用は、アプリケーションの効率と保守性を向上させることができます。

誤ったキーを使用すると、Reactアプリケーションでパフォーマンスの問題や予期しない動作を引き起こす可能性があります。 1)キーはリスト項目の一意の識別子であり、Virtual Domを効率的にReactの更新を支援します。 2)同じまたは非ユニークなキーを使用すると、リスト項目が再注文され、コンポーネント状態が失われます。 3)キーとして安定した一意の識別子を使用すると、パフォーマンスを最適化し、完全な再レンダリングを回避できます。 4)ESLINTなどのツールを使用して、キーの正しさを確認します。キーを適切に使用すると、効率的で信頼性の高い反応アプリケーションが保証されます。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

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

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

ドリームウィーバー CS6
ビジュアル Web 開発ツール

ホットトピック









