W3docs

Proprietà CSS top

La proprietà CSS top specifica la posizione superiore di un elemento in combinazione con la proprietà position. Esempi e prove interattive.

La proprietà CSS top imposta la posizione verticale di un elemento posizionato, misurata dal bordo superiore di un blocco di riferimento. Da sola non ha alcun effetto — agisce solo quando l'elemento ha anche un valore position diverso da quello predefinito static.

Questa pagina spiega come si comporta top per ciascun valore di position, le unità di misura utilizzabili, gli errori comuni e come si combina con bottom, left e right.

Come funziona top

Il blocco di riferimento rispetto al quale viene misurato top — e il significato dell'offset — dipende dal valore di position dell'elemento:

  • position: absolute o fixedtop sposta l'elemento dal bordo superiore del suo blocco contenitore (per absolute, l'antenato posizionato più vicino; per fixed, il viewport). Un valore maggiore di top spinge l'elemento più in basso.
  • position: relativetop sposta l'elemento verso il basso rispetto alla sua posizione normale, senza influire sul layout degli elementi circostanti. Lo spazio originariamente occupato viene preservato.
  • position: stickytop è la distanza dalla parte superiore del contenitore di scorrimento alla quale l'elemento si "incolla" durante lo scroll. top: 0 lo fa aderire proprio alla cima.
  • position: statictop viene ignorato completamente. Questo è il valore predefinito, quindi impostare sempre prima position.

Se sia top che bottom sono specificati su un elemento posizionato in modo assoluto la cui altezza è auto, l'elemento viene esteso per soddisfare entrambi; altrimenti top ha la precedenza e bottom viene ignorato.

Informazione

I valori negativi sono consentiti — top: -20px porta un elemento posizionato in modo assoluto o fisso al di sopra del suo bordo di riferimento, e sposta un elemento posizionato in modo relativo sopra la sua posizione normale.

Valore inizialeauto
Si applica aElementi posizionati.
EreditatoNo.
AnimabileSì.
VersioneCSS2
Sintassi DOMObject.style.top = "50px";

Sintassi

Sintassi della proprietà CSS top

top: auto | length | initial | inherit;

Esempio della proprietà top:

Esempio della proprietà CSS top con valore length

<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
    <style>
      div {
        background-color: #8ebf42;
        height: 200px;
        width: 600px;
        position: relative;
      }
      p {
        margin: 0;
        color: #eee;
        position: absolute;
        border: 2px solid #666;
      }
      .ex1 {
        top: 0;
      }
      .ex2 {
        top: 50px;
      }
    </style>
  </head>
  <body>
    <h2>Top property example</h2>
    <div>
      <p class="ex1">Some text (top: 0;)</p>
      <p class="ex2">
        Lorem ipsum is simply dummy text...(this text is positioned 50 pixels down from the top edge of the containing positioned element.)
      </p>
    </div>
  </body>
</html>

Risultato

Proprietà CSS top

Esempio della proprietà top con valore negativo:

Esempio della proprietà CSS top con valore negativo

<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
    <style>
      div {
        background-color: #666;
        height: 200px;
        position: relative;
      }
      p {
        margin: 0;
        color: #fff;
      }
      .top {
        position: absolute;
        top: -35px;
        color: #000000;
      }
    </style>
  </head>
  <body>
    <h2>Top property example</h2>
    <div>
      <p>Some text.</p>
      <p class="top">Text with the top property.</p>
    </div>
  </body>
</html>

Esempio della proprietà top definita in "pt", "%" e "em":

Esempio della proprietà top con valori "pt", "%" e "em":

<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
    <style>
      div {
        background-color: #8ebf42;
        height: 200px;
        width: 600px;
        position: relative;
      }
      p {
        margin: 0;
        color: #eee;
        position: absolute;
        border: 2px solid #666;
      }
      .ex1 {
        top: 5em;
      }
      .ex2 {
        top: 10pt;
      }
      .ex3 {
        top: 75%;
      }
    </style>
  </head>
  <body>
    <h2>Top property example</h2>
    <div>
      <p class="ex1">Some text (top: 0;)</p>
      <p class="ex2">
        Lorem ipsum is simply dummy text...(this text is positioned 50 pixels down from the top edge of the containing positioned element.)
      </p>
      <p class="ex3">
        Lorem ipsum is simply dummy text...(this text is positioned 50 pixels down from the top edge of the containing positioned element.)
      </p>
    </div>
  </body>
</html>

Valori

ValoreDescrizioniProvalo
autoImposta la posizione del bordo superiore. È il valore predefinito di questa proprietà.Provalo »
lengthImposta la posizione del bordo superiore con px, cm ecc. Sono validi valori negativi.Provalo »
%Imposta la posizione del bordo superiore con % dell'elemento contenitore. Sono validi valori negativi.Provalo »
initialImposta la proprietà al suo valore predefinito.Provalo »
inheritEredita la proprietà dall'elemento genitore.

Quando si utilizza un valore percentuale, viene calcolato rispetto all'altezza del blocco contenitore, non alla sua larghezza. Quindi top: 50% su un elemento posizionato in modo assoluto lo sposta verso il basso della metà dell'altezza del genitore.

Errori comuni

  • Dimenticare position. top non ha alcun effetto su un elemento static. Se l'offset sembra ignorato, verificare che position sia impostato su relative, absolute, fixed o sticky.
  • Antenato posizionato mancante. Un elemento absolute si posiziona rispetto al suo antenato posizionato più vicino. Se non ne esiste nessuno, ricade sul blocco contenitore iniziale (la radice delle dimensioni del viewport). Dare al genitore position: relative per contenerlo.
  • sticky che non si incolla. position: sticky funziona solo mentre l'elemento scorre all'interno di un antenato che effettivamente ha un overflow. Un valore top senza un contenitore scorrevole, o un genitore con overflow: hidden, sembrerà non fare nulla.
  • Usare sia top che bottom. Su un elemento assoluto con altezza auto lo estendono; altrimenti top ha la priorità e bottom viene ignorato.

Proprietà correlate

  • position — necessaria affinché top abbia effetto.
  • bottom, left, right — le altre proprietà di offset, usate insieme a top per posizionare gli elementi.
  • z-index — controlla l'ordine di sovrapposizione quando gli elementi posizionati si sovrappongono.

Esercitazione

Pratica
Cosa fa la proprietà CSS 'top'?
Cosa fa la proprietà CSS 'top'?
Was this page helpful?