Blocuri de aspectul tabelar

legăturile pa Pa pe niște p s t ep yn nu -M R ESOURCES s:

În ciuda faptului că în prezent există două linii de o machetă de pagină: tabular și bloc, nu cred că între susținătorii acestor două ramuri, există neînțelegere reciprocă. Sunt sigur că orice lucrător de web vede avantaje evidente oferite de structura blocurilor, dar în același timp, mulți oameni, atunci când se confruntă cu dificultăți, care în acest caz apar, evaluarea soluțiilor propuse este justificată rămân adepți ai școlii vechi - pur și simplu pentru că este mai convenabil .

Întrebarea cheie

Ce împiedică blocul Stratului marșul triumfal pe întreaga planetă? Există mai multe obstacole. Dar poate singura dintre ele este problema, unele locuri nu sunt comparabile cu atât mai puțin ca o căutare pentru Graal. Bottleneck - crearea blocurilor orizontale de aceeași înălțime, adică Punerea în aplicare a cel mai mult este că nici pe este, în esență masa, uneori, atunci când este necesar aspectul site-ului, de exemplu, în cazul clasic layout-3-hkolonochnogo:

Vreau să ofere un simplu, dar în același timp, o abordare nepopular pentru rezolvarea acestei probleme, și anume de a construi un cadru de site-ul, abandonarea tag-ul de masă, dar păstrând un model de tabel:

Conform standardului CSS, pentru a transforma acest set de divs în tabel, este suficient în clase de afișare corespunzătoare: afișare: tabel;. display: table-rând; și display: table-celulă; .

Dar eu nu numesc accidental această abordare este nepopular. „Tablichniki“ se va vedea recepția numai în mod inutil „reinventeze roata“, în calitate de campioni înfocați ai Skool Nu consideră acest mod ideologic incorect, mai ales pentru că la prima vedere, se pare că este o fundătură, browsere de la afișare Microsoft: tabel; Noi nu suport, și nu intenționează să sprijine în viitorul apropiat, ceea ce înseamnă că este posibil să se renunțe la masa de template-uri și această situație este un păcat să nu profite.

Cu multe obiecții poate nu sunt de acord, dar, cu toate acestea, este imposibil să nu observe avantajele evidente și abordarea „de masă“, cel mai important dintre ele, văd:

  • separarea reprezentărilor de conținut;
  • posibilitatea de a impune o „masă“ aspectele de orice complexitate;
  • punerea în aplicare simplă.

Postul „punerea în aplicare simplu,“ probabil cea mai mare cauza de îndoială, c „browsere corecte“, totul este clar, dar dacă există o soluție foarte simplă pentru Internet Explorer? Acolo.

De exemplu, luați în considerare următoarea structură:

În scopul de a localiza blocuri orizontal aliniat cu înălțimea lor, și anume pentru a simula comportamentul unui tabel în IE, este suficient pentru a defini clase de stil pentru a specifica lățimea coloanelor și ... totul. Exemplul 1 ilustrează această tehnică (Notă funcționează numai în sovmestimomosti mod de revers - Mod Quirks) în cazul în care trei coloane definite latime 200px.

Să considerăm o problemă „vital“: de exemplu, cadrul trebuie să fie întinsă în lățime până la 100%, lățimea primei coloane - 200px, a treia - 30%, în timp ce al doilea let ocupă un spațiu. pentru soluție IE ar putea arata ca acest lucru (în plus față de foaie de stil):

Recepția folosind un singur div container va lucra în browsere care acceptă afișare: tabel;. dar pentru modelul semantic tabel de potrivire de mai jos, voi da un exemplu de soluție generală pentru construirea a două containere.

Nu vă așteptați ca în acest fel, ca într-adevăr, oricare alta, să fie presărată cu trandafiri, există cu siguranță și nuanțe (de exemplu, efectul de alunecare în jos bloc în IE, pentru care nu există nici un loc pe lățimea paginii), dar tot ce știu de dificultățile sunt rezolvabile . Aici am doar o direcție generală, el a propus ideea, ei bine, atunci, cum se spune, aveți deja.