top CSS property
Baseline
Weitgehend verfügbar
*
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.
* Einige Teile dieser Funktion werden möglicherweise unterschiedlich gut unterstützt.
Die top-CSS-Eigenschaft legt die vertikale Position eines positionierten Elements fest. Diese Inset-Eigenschaft hat keine Wirkung auf nicht positionierte Elemente.
Probieren Sie es aus
top: 0;
top: 4em;
top: 10%;
top: 20px;
<section id="default-example">
<div class="example-container">
<div id="example-element">I am absolutely positioned.</div>
<p>
As much mud in the streets as if the waters had but newly retired from the
face of the earth, and it would not be wonderful to meet a Megalosaurus,
forty feet long or so, waddling like an elephantine lizard up Holborn
Hill.
</p>
</div>
</section>
.example-container {
border: 0.75em solid;
padding: 0.75em;
text-align: left;
position: relative;
width: 100%;
min-height: 200px;
}
#example-element {
background-color: #264653;
border: 4px solid #ffb500;
color: white;
position: absolute;
width: 140px;
height: 60px;
}
Der Effekt von top hängt davon ab, wie das Element positioniert ist (d.h. vom Wert der position-Eigenschaft):
- Wenn
positionaufabsoluteoderfixedgesetzt ist, gibt dietop-Eigenschaft den Abstand zwischen dem äußeren Rand der oberen Kante des Elements und der inneren Begrenzung der oberen Kante seines -Blöckeinschlusses an, oder im Falle von Anker-positionierten Elementen, wenn dieanchor()-Funktion innerhalb des Werts verwendet wird, relativ zur angegebenen<anchor-side>-Kante. Dietop-Eigenschaft ist kompatibel mit den Wertentop,bottom,start,end,self-start,self-end,centerund<percentage>. - Wenn
positionaufrelativegesetzt ist, gibt dietop-Eigenschaft den Abstand an, um den die obere Kante des Elements unterhalb seiner normalen Position verschoben wird. - Wenn
positionaufstickygesetzt ist, wird dietop-Eigenschaft verwendet, um das Sticky-Bereichsrechteck zu berechnen. - Wenn
positionaufstaticgesetzt ist, hat dietop-Eigenschaft keine Wirkung.
Wenn sowohl top als auch bottom Werte angegeben sind, gibt es drei verschiedene Fälle:
- Wenn
positionaufabsoluteoderfixedgesetzt ist undheightnicht spezifiziert ist (entwederautooder100%), werden sowohl dietop- als auch diebottom-Werte beachtet. - Wenn
positionaufrelativegesetzt ist oderheighteingeschränkt ist, hat dietop-Eigenschaft Vorrang und diebottom-Eigenschaft wird ignoriert. - Wenn
positionaufstickygesetzt ist, werden sowohltop- als auchbottom-Werte berücksichtigt. Dies bedeutet, dass sich ein Sticky-Element potenziell nach oben und unten innerhalb seines enthaltenden Blocks bewegen kann, basierend auf den Werten dieser beiden Eigenschaften, solange die Positionsbox des Elements innerhalb seines enthaltenden Blocks bleibt.
Syntax
/* <length> values */
top: 3px;
top: 2.4em;
top: anchor(bottom);
top: anchor-size(--my-anchor self-block, 10%);
/* <percentage>s of the height of the containing block */
top: 10%;
/* Keyword value */
top: auto;
/* Global values */
top: inherit;
top: initial;
top: revert;
top: revert-layer;
top: unset;
Werte
<length>-
Ein negativer, null oder positiver
<length>:- für absolut positionierte Elemente stellt es den Abstand zur oberen Begrenzung des enthaltenden Blocks dar.
- für Anker-positionierte Elemente wird die
anchor()-Funktion zu einem<length>-Wert relativ zur Position der oberen oder unteren Kante des zugehörigen Ankerelements aufgelöst (siehe Verwendung von Inset-Eigenschaften mitanchor()-Funktionswerten), und dieanchor-size()-Funktion wird zu einem<length>-Wert relativ zur Breite oder Höhe des zugehörigen Ankerelements aufgelöst (siehe Festlegen der Elementposition basierend auf der Ankergröße). - für relativ positionierte Elemente stellt es den Abstand dar, um den das Element unterhalb seiner normalen Position verschoben wird.
<percentage>-
Ein
<percentage>der Höhe des enthaltenden Blocks. auto-
Gibt an, dass:
- für absolut positionierte Elemente die Position des Elements basierend auf der
bottom-Eigenschaft festgelegt wird, währendheight: autoals eine Höhe basierend auf dem Inhalt behandelt wird; oder wennbottomebenfallsautoist, wird das Element dort positioniert, wo es vertikal positioniert werden sollte, wenn es ein statisches Element wäre. - für relativ positionierte Elemente der Abstand des Elements von seiner normalen Position basierend auf der
bottom-Eigenschaft festgelegt wird; oder wennbottomebenfallsautoist, wird das Element überhaupt nicht vertikal verschoben.
- für absolut positionierte Elemente die Position des Elements basierend auf der
Formale Definition
| Anfangswert | auto |
|---|---|
| Anwendbar auf | positionierte Elemente |
| Vererbt | Nein |
| Prozentwerte | bezieht sich auf die Höhe des äußeren Elements |
| Berechneter Wert | falls als Länge angegeben, die zugehörige absolute Länge; falls als Prozentwert angegeben, der angegebene Wert; ansonsten auto |
| Animationstyp | Längenangabe, Prozentsatz oder calc(); |
Formale Syntax
top =
auto |
<length-percentage> |
<anchor()> |
<anchor-size()>
<length-percentage> =
<length> |
<percentage>
<anchor()> =
anchor( <anchor-name>? &&
<anchor-side> , <length-percentage>? )
<anchor-size()> =
anchor-size( [ <anchor-name> || <anchor-size> ]? , <length-percentage>? )
<anchor-name> =
<dashed-ident>
<anchor-side> =
inside |
outside |
top |
left |
right |
bottom |
start |
end |
self-start |
self-end |
<percentage> |
center
<anchor-size> =
width |
height |
block |
inline |
self-block |
self-inline
Beispiele
>Ein positioniertes Element 10% vom oberen Rand
body {
background: beige;
}
div {
position: absolute;
top: 10%;
right: 40%;
bottom: 20%;
left: 15%;
background: gold;
border: 1px solid blue;
}
<div>The size of this content is determined by the position of its edges.</div>
Spezifikationen
| Spezifikation |
|---|
| CSS Positioned Layout Module Level 3> # insets> |
Browser-Kompatibilität
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.
Siehe auch
bottom,left, undrightinsetKurzforminset-block-start,inset-block-end,inset-inline-start, undinset-inline-endinset-blockundinset-inlineKurzformenposition- CSS positionierte Layouts Modul