Plassering av elementer. CSS - blokkposisjonering. Absolutt og relativ posisjonering. Hva du skal velge mellom eller metoder

I HTML-språk Alle elementer kan deles inn i blokk og inline. Blokkelementer er vanligvis representert som rektangulære områder med en viss mengde informasjon. Med deres hjelp bygges siderutenettet. Slike elementer opptar all plass tilgjengelig for dem i bredden, og det er vanligvis et linjeskift før og etter dem. Blokker kan gis innrykk, horisontale og vertikale dimensjoner.

Funksjoner av blokkelementer

Blokktagger inkluderer tagger som fremhever et stort antall tekstinformasjon:

,
,

,

,

,
    . stikkord
    ganske ofte brukt i utformingen av moderne nettsteder for å lage rutenett og betyr ganske enkelt en slags blokk eller beholder. Det er også mulig å legge andre tagger i den, noe som ikke er mulig med alle blokkelementer, så
    praktisk å bruke. Blokker er vanligvis stablet oppå hverandre og settes ikke inn i inline-elementer. HTML innebygde elementer er tekst, og CSS brukes til å style den.

    Gitt en innholdsbredde, er den totale blokkbredden summen av høyre og venstre utfylling, margin, kantlinje og breddeverdier. Ved en gitt høyde - fra topp og bunn polstring, marginer, grenser og høyde. Tekst i blokkelementer er venstrejustert som standard. Hvis en av dem inneholder inline-elementer sammen med blokk-elementer, opprettes en anonym blokk rundt inline-elementene. Standardstilen vil bli brukt på den. Den vil også arve den spesifiserte stilen som er tildelt den overordnede.

    Dokumentflyt

    Flow refererer til rekkefølgen sideelementer vises i, bestemt av egenskapene spesifisert i CSS. I dette tilfellet er blokker som standard stilt opp fra topp til bunn, og hvis det ikke er nok plass, flyttes inline-tagger til en ny linje og ordnes fra topp til bunn og fra venstre til høyre. Plasseringen av et element på siden avhenger av dets plassering i koden: jo høyere det er, jo tidligere er det plassert. Hvert av blokkelementene ser ut som et rektangel som skyver bort naboene. Du kan endre denne virkemåten ved å bruke spesielle egenskaper. Å justere visse blokker til midten eller sidene av en beholder i CSS kalles posisjonering.

    Posisjoneringselementer

    Plasseringen av blokker kan kontrolleres ved hjelp av absolutt og relativ posisjonering. Posisjonering brukes til å gi store deler av en side en bestemt plassering, for å lage komplekse grensesnitt, popup-vinduer og dekorative elementer. Hovedegenskapen som brukes til å plassere blokker i CSS er posisjon. Den har fire hovedegenskaper:

    • slektning;
    • absolutt;
    • fikset;
    • statisk.

    Med deres hjelp kan du bytte layoutmodus ved å spesifisere en av fire parametere: topp, høyre, bunn eller venstre. Det er også en egenskap for å bestille lag - z-indeks. Plassering med den statiske egenskapen brukes vanligvis ikke fordi den angir standardposisjonering av blokker. Derfor påvirker ikke bruken av noen parameter det på noen måte. De tre andre egenskapene brukes til layout: relativ, absolutt, fast.

    Relativ posisjonering

    Relativ plassering av blokker i CSS, dvs. posisjonen: relativ egenskap, betyr at et element kan flyttes og dets opprinnelige posisjon endres. En slik blokk forblir fortsatt i bekken. Det er faktisk ikke han selv som er fordrevet, men hans kopi. Eiendomsverdier er satt til å indikere nøyaktig hvor mye blokken vil bevege seg i en eller annen retning. De måles oftest i piksler. Men det er akseptabelt å bruke andre enheter.

    Bruke egenskaper for relativ posisjonering

    Den øverste egenskapen flytter en kopi av en bestemt blokk opp eller ned med antallet piksler spesifisert i egenskapen. Når du bruker den, forblir elementer plassert under eller over på sine steder, siden blokken som forskyves faktisk heller ikke beveger seg noe sted.

    Den nederste egenskapen flytter blokken i motsatt retning til den øverste egenskapen. En positiv verdi hjelper med å flytte den opp, og en negativ verdi hjelper med å flytte den ned. Høyre og venstre egenskaper flytter elementet til henholdsvis høyre og venstre. Ved å kombinere dem alle kan du angi den nøyaktige plasseringen av blokken på siden, flytte den langs de vertikale og horisontale koordinataksene. Hvis du øker innrykkene, vil de ikke bli beregnet fra kanten av selve blokken, men fra kopiforskyvningen til siden.

    Absolutt posisjonering

    Den absolutte posisjoneringen av blokker i CSS er spesifisert av verdien til egenskapen absolutt posisjon. Et element som er plassert faller absolutt ut av dokumentflyten, og dets plass blir tatt av naboblokker. Bredden til et slikt element strekkes avhengig av innholdet, og det kan forskyves ved å angi visse verdier for egenskapene topp, venstre, høyre, bunn. Absolutt plassering av blokker i CSS er nyttig for overskrifter. Men posisjon: absolutt fungerer ikke bare for blokkelementer, men også for innebygde elementer.

    Justere elementer til midten

    Et plassert absolutt inline-element vil oppføre seg nøyaktig på samme måte som et inline-element. Derfor kan posisjonering også brukes til å kontrollere tekst i CSS. Du kan bruke noen nye egenskaper på den, for eksempel endre høyden og bredden. Sentrering og vertikal justering i CSS bruker en kombinasjon av flere egenskaper. Kontrollerer den vertikale justeringen av toppegenskapen. Hvis du vil sentrere en blokk i CSS, bør hovedbeholderen være relativt posisjonert, og det justerte elementet bør være absolutt posisjonert. Beholderen må angi den øverste egenskapen: 50%, og for å flytte elementet med halvparten av sin egen høyde, bruk translate-egenskapen med verdien "0, -50%". Absolutt posisjonerte elementer kan separeres i en ny type, siden egenskaper som ikke er tilgjengelige for andre typer posisjonering brukes på dem.

    Plassering i forhold til øvre venstre hjørne av nettleseren

    Egenskapene venstre, topp, høyre og bunn fungerer annerledes på absolutt og relativt plasserte elementer. For relative elementer setter disse egenskapene forskyvningen i forhold til hvor elementet er plassert. Absolutt plasserte opptar en plass i forhold til et spesifikt koordinatsystem knyttet til størrelsen på nettleservinduet. Utgangspunktene for dette systemet er hjørnene av vinduet. Når du bruker egenskapen til venstre, vil innrykk telles fra venstre side av nettleseren, men det vil ikke være noen rullefelt. Toppegenskapen, når den er plassert absolutt, spesifiserer forskyvningen fra toppen av nettleseren til toppen av elementet den brukes på. Ved å kombinere begge egenskapene kan elementet flyttes i forhold til øvre venstre hjørne av nettleseren.

    Plassering i forhold til øvre høyre hjørne av nettleseren

    På samme måte, ved å bruke egenskapene til høyre og øverst, kan du trykke et element til høyre side av nettleservinduet og endre dets vertikale posisjon ved å flytte det til øvre høyre hjørne. Hvis den riktige egenskapen er satt til en negativ verdi, vil blokken bevege seg utenfor vindusgrensen. Etter dette skal et rullefelt vises. For å flytte et element ned, bruk egenskapen nederst. Den spesifiserer innrykk fra bunnkanten av nettleservinduet til bunnen av blokken. Hvis verdien er negativ, vises også et rullefelt, ettersom elementet flyttes utover den nederste kanten av nettleservinduet.

    Koordinatsystem for absolutt posisjonering

    Som standard er alle elementer som er gitt absolutt posisjonering knyttet til ett koordinatsystem - nettleservinduet. Men det kan endres ved å gi et overordnet element relativ posisjonering. Deretter vil barneblokken endre plassering avhengig av forelder. Hvis det blant de overordnede elementene er flere med relativ plassering, utføres tellingen fra den nærmeste av dem. I dette tilfellet vil standardposisjoneringen være fra det som er spesifisert i body-taggen.

    Referansepunkt for et absolutt plassert element

    Før et element ble gitt en absolutt posisjonering, ble det på et sted kalt en implisitt opprinnelse. Hvis en slik blokk ikke får egenskaper, vil den ikke flytte seg. Du kan flytte den ved å angi margegenskapen. Det vil fungere på samme måte som posisjoneringsegenskapene. Hvis du ikke definerer verdien av den venstre egenskapen og alle de andre, vil den være lik auto. Du kan også bruke auto for å returnere elementer til de opprinnelige stedene.

    Fast posisjonering

    En annen verdi er fast. Posisjonsegenskapen forankrer et element på et bestemt sted. Fast posisjonering brukes ofte for å lage menyer i CSS. Det ligner absolutt, men den faste blokken faller ut av strømmen. Selv når du ruller siden, vil et slikt element forbli på plass, så det er praktisk å bruke det til å lage en meny i CSS. Startpunktet vil være knyttet til nettleservinduet. Hvis det er flere posisjonerte blokker, brukes z-index-egenskapen til å bestille dem. Med dens hjelp kan du overlappe relative blokker med absolutte blokker hvis du gir dem den tilsvarende indeksen, uttrykt som et heltall. Jo større den er, jo høyere blir blokken.

    Noe av det beste med CSS er at stiler gir oss muligheten til å plassere innhold og elementer på en side på nesten alle tenkelige måter. Dette legger struktur til designet vårt og bidrar til å gjøre innholdet mer visuelt.

    Det er noen få forskjellige typer posisjonering i CSS, har hver av disse typene sitt eget omfang. I dette kapittelet skal vi se på noen forskjellige brukstilfeller – lage gjenbrukbare oppsett og unikt posisjonere engangselementer – og beskrive noen få metoder for å gjøre det.

    Plassering via flottør

    En måte å plassere elementer på en side på er gjennom flyteegenskapen. Denne egenskapen er ganske allsidig og kan brukes på mange forskjellige måter.

    I hovedsak tar float-egenskapen et element, fjerner det fra den normale flyten på siden og plasserer det til venstre eller høyre for det overordnede elementet. Alle andre elementer på siden vil vikle rundt et slikt element. For eksempel vil avsnitt vikle rundt et bilde hvis elementet flyteegenskap er satt.

    Når float-egenskapen brukes på flere elementer samtidig, gjør det mulig å lage et oppsett med flytende elementer ved siden av eller overfor hverandre, som vist i et flerkolonneoppsett.

    Float-egenskapen har flere verdier, de to mest populære er venstre og høyre, som lar elementet flyte til venstre eller høyre for det overordnede.

    Img ( flyte: venstre;)

    flyte i praksis

    La oss lage et generelt sideoppsett med en topptekst øverst, to kolonner i midten og en bunntekst nederst. Ideelt sett bør denne siden være merket med elementer

    ,
    ,