Što je float vrijednost u CS:GO? Sve o svojstvu float Vrste pozicioniranja HTML elemenata

07.09.2020 Recenzije

Opis

Određuje na koju će stranu element biti poravnat, dok će drugi elementi teći oko njega s druge strane. Kada je svojstvo float postavljeno na none, element se prikazuje na stranici kao i normalno, ali dopušteno je da jedan red teksta za prelamanje može biti u istom retku kao i sam element.

Sintaksa

plovak: lijevo | desno | nijedan | naslijediti

Vrijednosti

lijevo Poravnava element ulijevo, a svi ostali elementi, poput teksta, teku oko njega udesno. desno Poravnava element udesno, sa svim ostalim elementima koji teku oko njega ulijevo. none Omotanje elementa nije postavljeno. naslijediti Nasljeđuje vrijednost roditelja.

HTML5 CSS 2.1 IE 9 Cr 15 Op 11 Sa 5 Fx 8

plutati

Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam erat volutpat.
Duis autem dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit au gue duis dolore te feugat nulla facilisi.


Proizlaziti ovaj primjer prikazano na sl. 1.

Riža. 1. Korištenje svojstva float

Objektni model

document.getElementById("elementID ").style.styleFloat

document.getElementById("elementID ").style.cssFloat

Preglednici

U Internet preglednik Explorer 6 ima problem s udvostručenjem lijeve ili desne vrijednosti ispune za plutajuće elemente ugniježđene unutar nadređenih elemenata. Margina koja je uz matičnu stranu je udvostručena. Problem se obično rješava dodavanjem display: inline plutajućem elementu. Ovaj preglednik također dodaje ispunu od 3 piksela (tzv. "bug od tri piksela") u smjeru određenom float vrijednošću.

Inačice Internet Explorera do i uključujući 7.0 ne podržavaju vrijednost nasljeđivanja.

Prije nekoliko godina, kada su programeri prvi put počeli prelaziti na HTML označavanje bez tablice, svojstvo CSS float odjednom je preuzelo vrlo važnu ulogu. Razlog zašto je svojstvo float postalo tako uobičajeno je to što, prema zadanim postavkama, elementi bloka nisu poredani jedan do drugog u formatu temeljenom na stupcu. Budući da su stupci potrebni u gotovo svakoj CSS shemi, ovo se svojstvo naviklo - pa čak i zlorabilo.

Vlasništvo float u CSS-u, omogućuje razvojnom programeru da uključi stupce nalik tablici u HTML oznake bez upotrebe tablica. Ako ne zbog imovine plutati, tada CSS izgledi ne bi bili mogući osim korištenja apsolutnog i relativnog pozicioniranja - što bi bilo neuredno i učinilo izgled izgleda neodrživim.

U ovom članku ćemo vam reći što je svojstvo plutati i kako utječe na elemente u određenim kontekstima. Također ćemo pogledati neke od razlika koje se mogu pojaviti s ovim svojstvom u najčešće korištenim preglednicima. Na kraju, demonstrirat ćemo nekoliko praktičnih primjena svojstva plutati. Ovo bi također trebalo pružiti sveobuhvatnu i temeljitu raspravu o ovom svojstvu i njegovom utjecaju na razvoj CSS-a.

Definicija i sintaksa svojstava CSS Float

Svrha svojstva float je gurnuti blok element ulijevo ili udesno, uklanjajući ga iz tijeka dokumenta. To omogućuje da se trenutni sadržaj prirodno skupi oko plutajućeg elementa. Ovaj koncept je sličan onome što svakodnevno vidite u tiskanoj literaturi, gdje su fotografije i drugi grafički elementi poredani na jednu stranu, a sadržaj (obično tekst) prirodno teče oko elementa poredanog oko lijevog ili desnog ruba.

Gornja slika prikazuje odjeljak “Čitatelji” na stranici .net časopisa s 3 fotografije čitatelja koje su lijevo poravnate u svojim stupcima s tekstom koji se omotava oko slika. Ovo je osnovna ideja iza svojstva float u CSS izgledima i demonstrira jednu od tehnika korištenih u tabelarnom dizajnu.

Učinkovitost korištenja float-ova u rasporedima s više stupaca objasnio je Douglas Bowman 2004. godine u svojoj klasičnoj prezentaciji Nema više tablica:

Bowman je objasnio principe koji stoje iza izgleda bez tablice, koristeći staru Microsoftovu stranicu kao referencu. Floatovi su bili istaknuto korišteni u njegovom lažnom remontu Microsoft markupa.

Sintaksa

Svojstvo Float može uzeti jednu od 4 vrijednosti: lijevo, desno, ništa i naslijediti. Ovo se deklarira kao što je prikazano u donjem kodu:

#sidebar ( float: lijevo; )

#sidebar (

plovak: lijevo;

Najčešće korištene vrijednosti su lijevo i desno. Vrijednost none ili početna float vrijednost za bilo koji element HTML stranice zadana je vrijednost. Vrijednost nasljeđivanja, koja se može primijeniti na gotovo svako CSS svojstvo, ne radi u verzijama Internet Explorera, uključujući 7.

Svojstvo float ne zahtijeva bilo koje drugo svojstvo da se primijeni na element float, međutim, da bi ispravno funkcioniralo, float će raditi učinkovitije pod određenim okolnostima.

Obično bi plutajući element trebao imati eksplicitno postavljena širina(osim ako se radi o zamijenjenom elementu, poput slike). To osigurava da se float ponaša prema očekivanjima i pomaže u izbjegavanju problema u nekim preglednicima.

#sidebar ( float: lijevo; širina: 350px; )

#sidebar (

plovak: lijevo;

širina: 350px;

Značajke plutajućih elemenata

Slijedi popis ponašanja plutajućih elemenata, prema CSS2 specifikaciji:

Lijevo lebdeći blok će lebdjeti ulijevo sve dok njegov lijevi rub (ili granica ruba ako nema ruba) ne dodirne ili rub sadržaja bloka ili rub drugog plutajućeg bloka

Ako veličina plutajućeg bloka premašuje raspoloživi vodoravni prostor, tada će plutajući blok biti pomaknut prema dolje

Nepozicionirani, neplutajući blok elementi djeluju kao plutajući elementi, tj. nalazi se izvan tijeka dokumenata

Rubovi plutajućeg bloka neće odgovarati rubovima susjednih blokova

Korijenski element ( ) ne može se plutati

Inline element, onaj koji je plutajući, pretvara se u blok element

Plutanje u praksi

Najčešći slučaj upotrebe svojstva float je plutanje slike s tekstom koji je omotava. Na primjer:

Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, commodo vitae, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui.

Donec non enim in turpis pulvinar facilisis. Ut felis. Praesent dapibus, neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat. Aliquam erat volutpat. Nam dui mi, tincidunt quis, accumsan porttitor, facilisis luctus, metus.

CSS primijenjen na sliku u gornjem okviru izgleda ovako:

img ( float: lijevo; margina: 0 15px 5px 0; granica: čvrsta 1px #bbb; )

img(

plovak: lijevo;

margina: 0 15px 5px 0;

granica : čvrsta 1px #bbb ;

Jedino svojstvo koje može postići ovaj učinak je svojstvo float. Ostala svojstva (margina i rub) postoje iz estetskih razloga. Ostali elementi u bloku (tagovi

S tekstom u njima) ne trebaju nikakvi stilovi.

Kao što je ranije spomenuto, plutajući elementi se guraju izvan tijeka dokumenta, a ostali elementi bloka ostaju u toku, djelujući kao da plutajući element uopće nije tu. To je vizualno prikazano u nastavku:

Ovaj okvir lebdi lijevo

Ovaj

Element ima drugačiju boju pozadine kako bi pokazao da obuhvaća širinu svog roditelja, zanemarujući plutajući element. Ovaj umetnuti tekst, međutim, obavija lebdeći okvir.

U gornjem primjeru

element na razini bloka, tako da zanemaruje plutajući element koji obuhvaća širinu spremnika (minus padding). Svi elementi blok tipa koji nisu plutajući ponašat će se slično.

Tekst u odlomku je umetnut, tako da premotava plutajući element. Plutajućem bloku također su dane opcije margine za pomak u odnosu na odlomak, čineći ga vizualno čistim tako da element odlomka zanemaruje plutajući blok.

Čišćenje plovaka

Problemi rasporeda s plovcima obično se rješavaju korištenjem CSS svojstva jasno, što vam omogućuje da "uklonite" lebdeće elemente s lijeve ili desne ili obje strane.

Pogledajmo primjer koji se često može vidjeti - podnožje koje se okreće oko desne strane 2-klonskog izgleda:

Lijevi stupac lebdio je ulijevo

Ako pogledate stranicu IE6 i IE7, nećete vidjeti nikakve probleme. Lijevi i desni stupac su na mjestu, a podnožje je na dnu. Ali u Firefoxu, Operi, Safariju i Chromeu vidjet ćete da se podnožje pomiče s mjesta. To je uzrokovano primjenom float-a na stupce. To je ispravno ponašanje, iako je problematičnije. Da bismo riješili ovaj problem, koristimo gornje svojstvo jasno, u odnosu na podnožje:

#footer ( jasno: oboje; )

#podnožje (

jasno: oboje;

Rezultat je prikazan u nastavku:

Lijevi stupac lebdio je ulijevo

Desni stupac također je lebdio lijevo

Svojstvo clear će obrisati samo plutajuće elemente, tako da primjena clear: both na oba stupca ne bi uzrokovala padanje podnožja, jer podnožje nije plutajući element.

Svojstvo clear će obrisati samo plutajuće elemente. Upotreba clear-a je sljedeća: oba stupca neće izostaviti podnožje jer ono nije plutajući element.

Stoga koristite clear na elementima koji nisu plutajući, a ponekad čak i na plutajućim elementima, kako biste prisilili elemente stranice da zauzmu svoje naznačene položaje.

Rješavanje roditeljskog ispadanja

Jedna od najčešćih značajki float markupa je "leave-parent". To je prikazano u primjeru u nastavku:

Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper.

Primijetite da se baza lebdeće slike pojavljuje izvan svog roditelja. Roditelj nije potpuno proširen da bi sadržavao lebdeću sliku. To je uzrokovano onim o čemu smo ranije govorili: plutajući element je izvan prirodnog tijeka dokumenta, iako su svi elementi bloka prikazani, ali plutajući element nije tamo. Ovo nije CSS greška, sve je u skladu s CSS specifikacije. Svi preglednici rade isto u ovom primjeru. Treba reći da u ovom primjeru dodavanje širine spremnika može spriječiti problem u IE, ali bi također trebalo riješiti problem za Firefox, Operu, Safari ili Chrome.

Rješenje 1: Plovak za spremnik

Najjednostavniji način rješavanja ovog problema je float nadređenog elementa:

Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper.

Sada se spremnik širi da stane sve dječji elementi. No, nažalost, ovaj će popravak funkcionirati samo u ograničenom broju slučajeva, jer plutajući roditelj može imati neželjene posljedice za vaš izgled.

Rješenje 2: Dodajte dodatne oznake

Ovo je zastarjela metoda, ali je jednostavna opcija. Samo dodajte dodatni element na dno posude i "očistite". Ovako će izgledati HTML kôd nakon implementacije ove metode:

XHTML

Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper.

"//media.smashingmagazine.com/cdn_smash/wp-content/uploads/2009/10/lifesaver.jpg"širina = "200" visina = "222" alt = "" />

Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper.

Kao rezultat toga, CSS se primjenjuje na nove elemente:

Clearfix ( jasno: oboje; )

Clearfix (

jasno: oboje;

To možete učiniti i putem
označite trenutnim stilom. U svakom slučaju, dobit ćete željeni rezultat: nadređeni spremnik će se proširiti kako bi uključio sve svoje potomke. Ali ova se metoda ne preporučuje jer dodaje nesemantički kod vašem označavanju.

Rješenje 3: Pseudoelement nakon

:after pseudo-element dodaje element dovršenom HTML stranica. Ova se metoda prilično široko koristi za rješavanje problema s čišćenjem plovka. Ovako izgleda CSS:

Clearfix:after ( sadržaj: "."; prikaz: blok; visina: 0; jasno: oboje; vidljivost: skriveno; )

Clearfix:nakon (

sadržaj: "." ;

prikaz: blok;

visina: 0;

jasno: oboje;

vidljivost: skrivena;

CSS klasa "clearfix" primjenjuje se na bilo koji spremnik koji ima float djecu i ne proširuje se da ih uključi.

Ali ova metoda ne radi za Internet Explorer do verzije 7, tako da za IE trebate koristiti jednu od sljedećih opcija:

Clearfix ( prikaz: inline-block; ) .clearfix ( zumiranje: 1; )

Clearfix (

prikaz: inline-block;

Clearfix (

zumiranje: 1;

Ovisno o vrsti problema, imate posla s jednim od dva rješenja koja će riješiti ovaj problem u Internet Exploreru. Treba imati na umu da svojstvo zumiranja nije standardno Microsoftovo svojstvo i stoga će vaš CSS postati nevažeći.

Budući da pseudoelement :after ne radi u IE6/7, kod je malo napuhan i lukav, a potrebno je dodatno oblikovanje koje nije važeće samo za IE, tako da ovo rješenje nije najbolji način, ali vjerojatno najbolji koji smo dosad pogledali.

Rješenje 4: Svojstvo preljeva

Daleko najbolji i najlakši način za rješavanje problema ispadanja roditelja je dodavanje overflow: hidden ili overflow: auto nadređenom elementu. Jasan je, jednostavan za održavanje, radi u gotovo svim preglednicima i ne dodaje nikakve nepotrebne oznake.

Primijetite da sam rekao "skoro" u svim preglednicima. To je zato što ne radi u IE6. Ali, u mnogim slučajevima, nadređeni spremnik će imati postavljenu širinu, što rješava problem u IE6. Ako nadređeni spremnik nema širinu, možete dodati IE6 pojedinačni stil sa sljedećim kodom:

// Ovaj popravak je samo za IE6 .clearfix ( visina: 1%; preljev: vidljiv; )

// Ovaj popravak je samo za IE6

Clearfix (

visina: 1%;

preljev: vidljiv;

U IE6, svojstvo visine pogrešno se tretira kao minimalna visina, pa to prisiljava spremnik da uključi svoju djecu. Svojstvo Overflow se zatim vraća na "vidljivo" kako bi se osiguralo da sadržaj nije skriven ili da se pomiče po njemu.

Jedina mana korištenja metode prelijevanja (u bilo kojem pregledniku) je mogućnost da će sadržaj elementa imati trake za pomicanje ili sakriti sadržaj. Ako postoje bilo koji elementi s negativnim marginama ili apsolutnim pozicioniranjem u roditelju, oni će biti skriveni ako se protežu izvan roditelja, stoga ovu metodu treba pažljivo koristiti. Također treba napomenuti da ako sadržani element ima određenu visinu ili minimalnu visinu, tada definitivno ne biste mogli koristiti metodu prelijevanja.

Stoga nije baš lako riješiti ovaj problem s više preglednika. Ali gotovo svaki problem čišćenja plovka može se riješiti jednom od gore navedenih metoda.

Povezane float pogreške u Internet Exploreru

Tijekom godina, na internetu su objavljeni brojni članci koji raspravljaju o uobičajenim pogreškama povezanim s floatovima u CSS oznakama. Svi se oni, što ne iznenađuje, bave problemima specifičnim za Internet Explorer. U nastavku ćete pronaći popis poveznica na brojne članke koji raspravljaju o problemima povezanim s plovkom:

Promjena svojstva float pomoću JavaScripta

Da biste promijenili CSS vrijednost u JavaScriptu, morate pristupiti stilu objekta pretvaranjem predviđenog CSS svojstva u "Camel case". Na primjer, CSS svojstvo "margin-left" postaje marginLeft, svojstvo background-color postaje BackgroundColor , i tako dalje. Ali sa svojstvom float stvari su drugačije jer je riječ float već rezervirana u JavaScriptu. Stoga će sljedeće biti netočno:

Stil. styleFloat = "lijevo";

// Za sve ostale preglednike

myDiv. stil. cssFloat = "lijevo" ;

Praktična upotreba plovka

Floats se mogu koristiti za rješavanje brojnih problema u CSS označavanju. Ovdje su opisani neki primjeri.

2 stupca, fiksne širine

3 stupca, izgled jednake visine

Lebdeća slika s naslovom.

Slično onome o čemu smo ranije govorili u Float in Practice, Max Design opisuje kako lebdenje slike s naslovom omogućuje tekstu da se prirodno omota oko nje.

Horizontalna navigacija s neuređenim popisima

Svojstvo float je ključna komponenta u kodiranju vodoravnog prikaza temeljenog na spriteu navigacijske trake. Chris Spooner iz Line25 opisuje stvaranje Menu of Awesomeness, koji označava

  • , držeći navigacijske gumbe koristi float: lijevo:

    Kako bismo demonstrirali važnost svojstva float u ovom primjeru, evo snimke zaslona iste slike nakon upotrebe firebuga za uklanjanje float: lijevo:

    Fotogalerije temeljene na mreži

    Jednostavna upotreba svojstva float je float:left niz fotografija sadržanih u nesređenom popisu, što daje isti rezultat kao ono što biste vidjeli u označavanju tablice.

    Stranica proizvoda Foremost Canada (pogledajte gornju sliku) prikazuje svoje proizvode u obliku mreže pored bočne trake. Fotografije se prikazuju kao neuređeni popis sa svojstvom float, za sve

  • elementi postavljeni da lebde: lijevo. Ovo funkcionira bolje od rešetke tablice jer se broj fotografija u galeriji može promijeniti bez utjecaja na izgled.

    Stranica s futonima tvrtke Paragon Furniture (pogledajte gornju sliku) još je jedan primjer stranice proizvoda koja koristi neuređeni popis s plutajućim oznakama

  • .

    Stranica rezultata pretraživanja iStockphoto (pogledajte sliku iznad) ima istu mrežu strukturiranih fotografija, ovdje fotografije sadrže float:left

    oznake, ne
  • oznake.

    Poravnanje polja s gumbom

    Zadano modeliranje elemenata obrasca za različitim preglednicima može biti problematično. Često u jedno polje obrasca, kao što je obrazac za pretraživanje, trebate staviti element pored gumba "pošalji".

    Danas ću vam reći o takvom parametru stavke u CS:GO kao float vrijednost ili float vrijednost. Ovo je decimalni broj do 1. Što je ovaj broj veći, to je više izgreban predmet će izgledati. Zašto je važno prije kupnje saznati koju vrijednost ima neki predmet?

    Pogledajte, danas su na Steam Marketu bila dva za prodaju po otprilike istoj cijeni. Ali jedan je imao plovak 0,54 , i drugi 0,81 .

    Odmah je vidljivo da puška s manje plovka izgleda mnogo privlačnije. Čak bih rekao da izgleda više izlizano nego otvrdlo u bitkama.

    Postoji ukupno pet stanja stavki:

    • Ožiljen u bitkama 1.00 – 0.44
    • Dobro nošen 0.44 – 0.37
    • Testirano na terenu 0.37 – 0.15
    • Minimalno nošeno 0.15 – 0.07
    • Tvornički novo 0.07 – 0.00

    Sukladno tome, naš AWP | Asimov (Ožiljen u bitci) s float vrijednošću 0,57 izgleda slično Nošena.
    Preprodavači također jure za dobrom float vrijednošću, budući da dobar pokazatelj ovog parametra može gotovo udvostručiti cijenu nekih artikala.

    Dakle, kako saznati float vrijednost u CS:GO?

    Ako želite saznati koliki je broj artikala u vašem inventaru, tada će vam web stranica csgo.exchange pomoći. Idite na stranicu, kliknite gumb za prijavu koristeći Steam i pričekajte dok stranica ne učita vaš inventar (što je više stavki, to je dulje potrebno za učitavanje). Zatim, samo pokažite na oružje i pogledajte vrijednost.

    Kako vidjeti float vrijednost na tržištu?

    Nedavno sam napisao recenziju dodatka. Dakle, još jedna sjajna značajka ovog dodatka je određivanje float stavke na tržištu. Nakon instaliranja dodatka, poveznica se pojavljuje pored svake stavke “Pogledaj na glws”, klikom na koju ćete biti prebačeni na stranicu na kojoj je, između ostalog, naznačen i parametar "WEAR_FLOAT".

    Plutanje je također omogućeno prema zadanim postavkama na stranicama za prodaju skinova. Kao npr Opskins.com.

    Uz gledanje Floata, još uvijek savjetujem da pogledate svaki predmet zasebno u igrici ili na web stranici metjm.net

    Hvala što ste pročitali članak. Nadam se da ti je pomoglo. Ako je to slučaj, bit će mi drago primiti robu široke potrošnje kao donaciju putem poveznice. Hvala vam .

    Određuje na koju će stranu element biti poravnat, dok će drugi elementi teći oko njega s druge strane. Kada je svojstvo float postavljeno na none, element se prikazuje na stranici kao i normalno, ali dopušteno je da jedan red teksta za prelamanje može biti u istom retku kao i sam element.

    kratka informacija

    Sintaksa

    plovak: lijevo | desno | nikakav

    Oznake

    OpisPrimjer
    <тип> Označava vrstu vrijednosti.<размер>
    A & & BVrijednosti se moraju ispisati navedenim redoslijedom.<размер> && <цвет>
    A | BOznačava da trebate odabrati samo jednu vrijednost od predloženih (A ili B).normalno | malim slovima
    A || BSvaka se vrijednost može koristiti samostalno ili zajedno s drugima bilo kojim redoslijedom.širina || računati
    Vrijednosti grupa.[ obrezivanje || križ ]
    * Ponovite nula ili više puta.[,<время>]*
    + Ponovite jednom ili više puta.<число>+
    ? Navedena vrsta, riječ ili grupa nisu obavezni.umetak?
    (A, B)Ponovite najmanje A, ali ne više od B puta.<радиус>{1,4}
    # Ponovite jednom ili više puta odvojene zarezima.<время>#

    Vrijednosti

    lijevo Poravnava element ulijevo, a svi ostali elementi, poput teksta, teku oko njega udesno. desno Poravnava element udesno, sa svim ostalim elementima koji teku oko njega ulijevo. none Omotanje elementa nije navedeno.

    Pješčanik

    Winnie the Pooh uvijek nije bio nesklon malom osvježenju, posebno u jedanaest ujutro, jer je u to vrijeme doručak već odavno završio, a ručak još nije počeo. I, naravno, silno se obradovao kad je vidio da Zec vadi šalice i tanjure.

    img ( float: (( playgroundValue )) ;)

    Primjer

    plutati

    Biheviorizam, koliko god se paradoksalno činio, osvjetljava sublimirani podražaj, primjerice, Richard Bandler je promjenom submodaliteta izgradio učinkovita stanja.



    Rezultat ovog primjera prikazan je na sl. 1.

    Riža. 1. Korištenje svojstva float

    Objektni model

    Objekt.style.cssFloat

    Bilješka

    U Internet Exploreru 6 postoji problem s udvostručenjem lijeve ili desne vrijednosti ispune za plutajuće elemente koji su ugniježđeni unutar nadređenih elemenata. Margina koja je uz matičnu stranu je udvostručena. Problem se obično rješava dodavanjem display: inline plutajućem elementu. Ovaj preglednik također dodaje ispunu od 3 piksela (tzv. "bug od tri piksela") u smjeru određenom float vrijednošću.

    Specifikacija

    Svaka specifikacija prolazi kroz nekoliko faza odobravanja.

    • Preporuka - Specifikaciju je odobrio W3C i preporučuje se kao standard.
    • Preporuka kandidata ( Moguća preporuka) - skupina odgovorna za standard je zadovoljna da on ispunjava svoje ciljeve, ali joj je potrebna pomoć razvojne zajednice za implementaciju standarda.
    • Predložena preporuka Predložena preporuka) - u ovoj fazi dokument se podnosi Savjetodavnom vijeću W3C na konačno odobrenje.
    • Radni nacrt - zrelija verzija nacrta o kojoj se raspravljalo i dopunjena radi pregleda zajednice.
    • Urednikov nacrt ( Urednički nacrt) - nacrt verzije standarda nakon izmjena koje su izvršili urednici projekta.
    • Nacrt ( Nacrt specifikacije) - prva verzija nacrta standarda.

    Preglednici

    Preglednici

    U tablici preglednika koriste se sljedeće oznake.

    CSS svojstvo detaljno opisano plutati, dane su značajke primjene i suptilnosti korištenja, vrste pozicioniranja HTML elemenata.

    Želio bih napomenuti da se početnicima gore navedeno može činiti zbunjujućim i kompliciranim, ali uvjeravam vas da bez poznavanja pravila za renderiranje elemenata u pregledniku nećete postati dobar dizajner izgleda. Stoga vam savjetujem strpljenje.

    Terminologija

    Da izbjegnemo nejasnoće, dogovorimo se o uvjetima.
    Plutati(plutajući element) – pod plutati ili plutajući element u članku znači blok element sa skupom CSS svojstava plutatipravo ili lijevo.
    Boks– pojam kutija odnosi se na zamišljeni pravokutnik koji obuhvaća svaki element HTML oznake. U skladu s engleskom terminologijom, ovaj zamišljeni pravokutnik nazvat ćemo kutija.
    Ako vam nije baš jasno o boksu, preporučujem vam da se detaljnije upoznate s boksovima i njihovim svojstvima, jer ovaj se pojam prilično često koristi u članku, i što je najvažnije, on je osnova cjelokupnog HTML izgleda.
    Bilješka. Dalje u tekstu ćemo se susresti podvučene riječi. Stoga želim posebno skrenuti pozornost na određeno svojstvo ili kvalitetu elementa.

    Vrste pozicioniranja HTML elemenata

    Za jasno prezentiranje navedenog potrebno je poznavati i osnovne principe prikaza elemenata u HTML dokumentima.
    Prema w3.org, WEB označavanje koristi tri rasporeda elemenata u Web dokument X.
    Normalan protok– U CSS-u 2.1, normalni tijek web dokumenta uključuje elemente prikazane kao blok okviri, elemente oblikovane kao umetnuti okviri i relativno pozicioniranje blok i umetnuti okviri.
    Drugim riječima, normalni tok uključuje normalne elemente rasporeda koji nemaju plutati, jednako lijevo desno, ili položaj, jednako apsolutno/fiksno .
    Plutati– plutajući element se najprije postavlja u skladu s pravilima postavljanja u normalnom toku, zatim se uklanja iz tog toka i pomiče u svojoj liniji ulijevo ili udesno što je više moguće.
    Jasno shvatite ovo važno pravilo. Budući da su plutajući elementi izvedeni iz normalnog tijeka dokumenta, blok okviri normalnog tijeka ih ne vide, ali linijski okviri normalnog tijeka ih vide i teku oko jedne strane; inline okviri posebno uključuju normalan tekst blok okvira. To znači da ako se pri postavljanju blok kutija s normalnim protokom ne obraća pažnja na prisutnost plutajućih kutija, tada sadržaj tih kutija (inline elementi) teče oko takvih elemenata.
    Apsolutno pozicioniranje– kod apsolutnog pozicioniranja kutija je potpuno izdvojena iz normalnog toka (ne utječe na naknadne) i postavljena je u odnosu na položaj svoje posude, odnosno elementa u kojem se nalazi.
    Još malo o potocima HTML dokumenti možete pročitati u članku

    Razlike između float i position elemenata

    Na početku, za svaki slučaj, da vas podsjetim koja je razlika između plutajućeg ( plutati) i postavljen ( položaj) elementi. Relativno pozicioniran element s vrijednošću položaj: relativni ostaje u normalnom toku dokumenta, ali je pomaknut u odnosu na svoj položaj, ostali elementi nisu pogođeni i ostaju tamo gdje su bili. To omogućuje relativno pozicioniranim elementima da preklapaju okolne elemente na stranici. Ako element ima pozicija: apsolutna; ili položaj: fiksni;, zatim se uklanja iz normalnog protoka i postavlja prema apsolutnim pravilima pozicioniranja.
    Plutajući element uvijek se uklanja iz normalnog toka dokumenta i utječe na položaj okolnih elemenata.

    Sada počnimo.

    Što je float?

    “Float” je jedno od CSS svojstava blok markup elementa, zbog kojeg se HTML element pomiče na krajnju lijevu ili desnu poziciju koja je dostupna za postavljanje unutar spremnika koji sadrži ovaj element. Ako u trenutna linijaširina spremnika nije dovoljna da ga primi, pomiče se u sljedeći red dok ne stane. Imajte na umu da širina plutati element je određen njegovim sadržajem. Ovisno o postavljenoj vrijednosti plutati, inline elementi mogu teći oko takvog blok elementa duž jedne od njegovih horizontalnih strana.
    Vlasništvo plutati može prihvatiti sljedeće vrijednosti: nikakav(zadano), lijevo, desno i naslijediti.

    Pravila za crtanje plutajućih elemenata

    Što se događa kada preglednik naiđe na element koji ima svojstvo plutati različito od nikakav?
    U početku se takva kutija postavlja kao običan element, zatim se uklanja iz normalnog toka i pomiče lijevo ili desno dok ne naiđe na isti plutati element ili obrub svog nadređenog spremnika. Ako nema dovoljno preostalog vodoravnog prostora za element, preglednik ga premješta u sljedeći redak svog spremnika.
    Jer plutati element uklonjen iz normalnog toka, elementi normalnog bloka bez postavljenih svojstava plutati ne znaju za njegovo postojanje i postavljaju se na uobičajen način, svaki u novom redu. Umetnuti elementi označavanja "vidjeti" plutati okvir i teći oko njega duž jedne strane ovisno o vrijednosti - lijevo ili pravo.
    Da bih jasno pokazao što je rečeno, navest ću sljedeći primjer.

    Normalna kutija1.

    float div1.

    float div2.

    Normalna kutija2.

    To je ono što će preglednik prikazati.

    Demonstracija renderiranja float elemenata

    Sada shvatimo što se dogodilo. Primjer prikazuje 4 bloka, box1 i box2 preglednik iscrtava prema zadanim postavkama, tj. u normalnom toku, a unutarnji elementi imaju lebdjeti = lijevo. Da bi primjer bio jasniji, dodao sam boju pozadine i ispunu blokovima. Dakle, na kraju su zadani blokovi (1. i 4.) prikazani kao i obično, svaki u novom retku i zauzimajući cijelu širinu ( budući da je ovo snimka zaslona oznake, širina okvira ograničena je širinom slike). Plutajući okviri (2. i 3.) izdvojeni su iz normalnog protoka (tj. 1. i 4. okvir ih ne vide, tako da "normalni okvir 2" počinje ispod 1. od početka retka) i pomaknuti na lijevu granicu spremnik. I premda normalni blok okviri ne vide plutajuće okvire, umetnuti okvir posljednjeg okvira (a ovo je njegov tekst) vidi plutajuće okvire i teče oko njih s desne strane.
    Kao što vidite, sve je u skladu s gornjim algoritmom renderiranja plutati elementi.

    Kako koristiti plovak

    Postoje dva glavna načina korištenja imovine plutati.
    Pogledajmo ih.

    Prelamanje teksta oko slike.

    HTML označavanje često koristi slike i samo neke pravokutne elemente. Svojstvo float naširoko se koristi kako bi se osiguralo da tekst teče oko njih, a ne s linijom koja slijedi nakon ovih pravokutnika.

    Tekst se prelama oko slike s float:left

    Primjer izgleda stranice s tekstom koji se omotava oko slike.

    CSS
    img.alignleft(float: lijevo; margina: 0 10px 10px 0)

    U gornjem kodu postoji plutajući element img i tekst za omatanje nalaze se unutar istog spremnika str.
    Imajte na umu da u CSS stilovi ispuna je dodana na lijevu i desnu stranu plutajućeg elementa. Uobičajena je praksa dodavanje razmaka između slike i okolnog teksta.

    Izgledi stupaca

    Vlasništvo Plutati omogućuje postavljanje dva elementa bloka jedan pored drugoga umjesto da se kreće od njih nova linija. Ovo svojstvo plutajućih elemenata vrlo je zgodno koristiti za stvaranje stupaca u dokumentu. Da biste dobili izgled s 2 stupca, samo postavite float (tj. postavite svojstvo float) na dva DIV-a.
    Primjer stvaranja izgleda s 2 stupca pomoću float.

    HTML
    ‹div id="omot"›
    ‹div id="lijevi-stupac"›‹div›
    ‹div id="desni-stupac"›‹/div›
    ‹/div›

    CSS
    #lijevi-stupac (float: lijevo)
    #desni stupac (float: lijevo)

    U primjeru su oba interna DIV-a označena lijevo, što rezultira u 2 stupca. Također biste trebali provjeriti da ukupna širina dva unutarnja stupca (div) ne premašuje širinu nadređenog okvira, inače će drugi stupac skočiti na novi položaj, ispod prvog stupca.
    Dodavanjem diva zaglavlja iznad 2 stupca i diva podnožja pomoću svojstva čisto, dobit ćete jednostavan i lijep raspored s 2 stupca.

    I još jedan savjet. Uvijek postavite širinu plutajućeg elementa; ako to ne učinite, možete imati neželjene posljedice.

    Onemogućavanje svojstva float

    Često pri radu sa plutati Možda će biti potrebno da se sljedeći elementi označavanja ne postave pored plutajućeg trenutnog, već kao i obično, u sljedećem retku, tj. morate se vratiti na postavljanje elemenata u skladu s normalnim tokom.
    To se često postiže korištenjem imovine čisto. Vlasništvo čisto uzima vrijednosti lijevo, desno, oboje, nijedan(zadano) i naslijediti. U praksi se koriste prve 3 vrijednosti, au velikoj većini slučajeva ćete ih koristiti jasno: oboje.
    Najčešće, možda, čisto koristi se za postavljanje diva podnožja stranice ispod vaša 2 ili 3 plutajuća stupca.


    Budi oprezan. Kada se koristi nakon plutajućeg elementa u novoj kutiji, pravila s čisto, vraćate ovu kutiju u normalan tijek, ali ujedno i njezino vlasništvo margin-top prestaje raditi. Ova se situacija često ispravlja postavljanjem praznog diva sa svojstvom ispred okvira potrebnog u normalnom toku čisto

    . Radi pravde, treba napomenuti da se ova tehnika smatra tehnički ispravnom, ali semantički netočnom, jer pojavljuje se prazno u dokumentu div spremnik.

    Posuda s plutajućim elementima

    Prva stvar koju trebate učiniti kada koristite spremnik za plutajuće elemente je provjeriti je li spremnik dovoljno širok da stane elemente jedan do drugog. Ako postavite svojstvo dva elementa float:lijevo za izradu izgleda u 2 stupca, a ukupna širina elemenata je veća od širine spremnika, tada će jedan od elemenata skočiti na sljedeći redak. To će se dogoditi jer drugi stupac neće imati dovoljno prostora da stoji u roditeljskom okviru pored 1. stupca. Ispod su slike koje ilustriraju ovu situaciju.

    Prethodno je spomenuto da se plutajući elementi uklanjaju iz normalnog tijeka dokumenta. To dovodi do zanimljivog i zbunjujućeg problema kada svi elementi unutar spremnika lebde. To se obično opaža, na primjer, kada se nalazi u div spremniku zaglavlja Internet stranice uz nekretninu postoji slika logotipa float:lijevo. U zaglavlju također, obično koristeći svojstvo pozadinska slika bilo koji pozadinska slika. Ukupno imamo spremnik u normalnom toku koji sadrži plutajući element i prazan element u normalnom toku, budući da se slika prikazuje u pozadini. Problem je u tome što div zaglavlja sadrži jedini element koji nije prazan - lebdeću sliku logotipa koja je ispala iz normalnog toka. Dakle, preglednik smatra da je zaglavlje div prazno i ​​postavlja njegovu visinu na nulu. Često kažu da se kontejner srušio. Postoji nekoliko načina za rješavanje ovog problema. Možete eksplicitno postaviti visinu div spremnika da ne bude manja od visine slike. To bi dobro funkcioniralo s naslovom poput gornjeg primjera, ali nije uvijek moguće iz više razloga. Ponekad se dodaje prazan div sa skupom svojstava čisto tako da sljedeći elementi ne lebde.

    HTML
    ‹div class="clear"›‹/div›

    CSS
    .jasno (jasno:oboje;)

    Ovo je zgodno ako vam je dopušteno malo praznog prostora nakon plutajućih elemenata, jer... Neki preglednici za prazne divove mogu imati zadane konačne vrijednosti za visina, margina, ispuna itd.
    Postoji i način korištenja imovine prelijevanje u roditeljskom elementu. Obično se koristi preljev: skriven, ali ovisno o situaciji možete koristiti preljev: autom ili preljev-y umjesto korištenja ovog svojstva u oba smjera. Korištenje imovine prelijevanjeŠtiti roditeljski spremnik od kolapsa.

    Problemi s plovcima

    Osim problema s kolapsirajućim spremnikom, svojstvo float ima niz drugih problema.
    Star Internetske verzije Explorer ima grešku s dvostrukom uvlakom ( margina). Ako elementi lete u istom smjeru i elementi se također dodaju margina u istom smjeru (lijevo/lijevo ili desno/desno), IE udvostručuje vrijednost margina. Jednostavno rješenje postavlja svojstvo prikaz: inline za plutajući element, usput, ovo svojstvo pomaže da se riješite drugih grešaka štetnog magarca. Osim toga, možete koristiti uvjetne komentare za postavljanje specifičnih margina za IE ili za pojedinačne verzije IE.
    Drugi problem je dodavanje elemenata unutar plutajućeg elementa, a širina dodanih elemenata je veća od širine spremnika. Možete, na primjer, dodati sliku unutar plutajućeg elementa, a širina slike je veća od širine spremnika. Ovisno o pregledniku, to može dovesti do toga da vaš plutajući element bude širi od predviđenog ili da sadržaj preklapa vašu sliku. Pazite da elementi unutar plutajućeg elementa ne prelaze širinu plutajućeg elementa.
    Također postoji problem s nestankom donjeg sloja ( margina-dno). Donja podloga plutajućeg elementa unutar drugih plutajućih elemenata može se zanemariti. Rješenje je koristiti podstava umjesto margina, ako se to dogodi.

    Sažetak na plovak

    Na učenje CSS-a Početnici gravitiraju prema apsolutnom i relativnom pozicioniranju jer se čine lakšim. Ali obično je najbolja praksa koristiti float. Ako zapamtite nekoliko ključnih točaka, bit ćete na dobrom putu da razumijete i upravljate plutajućim elementima u svojim izgledima.

    • Plutajući elementi postavljeni su u normalnom tijeku dokumenta, zatim pomaknuti lijevo ili desno unutar nadređenog elementa prema float vrijednosti i uklonjeni iz normalnog tijeka dokumenta.
    • Oznake s postavljenim vrijednostima plutati automatski postaju blok elementi.
    • Blok kutije s ugrađenim plutati postavljene jedna do druge sve dok za njih ima dovoljno mjesta. Ako u spremniku nema dovoljno mjesta, pojavit će se ispod plutajućih elemenata.
    • Širina okvira sa skupom svojstava plutati određena širinom svog sadržaja. Preporuka je postaviti širinu na float elemente prilikom označavanja, inače rezultat može biti nepredvidiv.Preporuka se ne odnosi na slike, jer se za njih širina podrazumijeva.
    • Plutajući i pozicionirani elementi razlikuju se i ponašaju se drugačije. Ne možete koristiti svojstva plutati I položaj u jednom elementu.
    • Za poništavanje svojstva omatanja za sljedeće elemente upotrijebite svojstvo CSS čisto.
    • Plutati boks izlazi iz glavne niti, tako da su elementi bloka u normalnoj niti postavljeni kao da ne postoje, ali umetnuti okviri tih elemenata prave mjesta za plutajući blok.
    • Kontejner s isključivo plutajućim elementima ima nultu visinu, jer float elementi su izvađeni iz normalnog toka, pa ga roditelj smatra praznim. Postoje načini za borbu protiv ovog učinka bez dodatnog označavanja; možete se, na primjer, upoznati s njima.
    • Za razliku od glavnih elemenata protoka, okomite granice plutati kutije se ne spajaju s granicama susjednih blokova.
    • Pronađite rješenja koja najbolje odgovaraju vašim potrebama za rješavanje problema s ispravnim prikazom float elemenata u Internet Exploreru.

    Nadam se da će vam gore navedeno pomoći da razjasnite nedoumice kada koristeći CSS Svojstva plutati.