Egy ideje próbálkozok összehozni egy layout-ot CSS-ben, eddig kevés sikerrel.
Ha el is jutok egy pontig akkor szinte biztos, hogy az következő dolog amit csinálok még az addig jó dolgot is elrontja.
Ebben kérnék egy kis segítséget. Elvileg egy egyszerű elrendezést szeretnék megvalósítani vele. Talán e-mail weblapokra hasonlít a legjobban a dolog ami kellene.
Valahogy így kellene kinéznie a véglegesnek:
Ahol a:
- kék vizszintesen 100%, függőlegesen 30px
- lila vizszintesen 100px, függőlegesen kitölti a helyet
- zöld vizszintesen 100px, függőlegesen kitölti a helyet, függőleges scrollbar
- cyan vizszintesen kitölti a helyet, függőlegesen kitölti a helyet, függőleges scrollbar
- piros vizszintesen kitölti a helyet, függőlegesen 300px, függőleges scrollbar
- minimális margó a területek között pl. 5px
Eddig ezt sikerült összehoznom, ami talán közel áll ahhoz amit szeretnék:
http://jsfiddle.net/QXKtm/69/
- 4289 megtekintés
Hozzászólások
Ilyen layout mintából/generálóból dugig van a net...
- A hozzászóláshoz be kell jelentkezni
Kérlek mutass egyet ami azt csinálja amit akarok.
Sajnos már 2 napot rászántam, de nem akar sikerülni megfelelőre a végeredmény.
- A hozzászóláshoz be kell jelentkezni
Esetleg ezt átfuthatod: http://alistapart.com/article/multicolumnlayouts
Ha rákeresel a "The next example illustrates" szövegre, és megnézed azt a példát, nagyjából az a layout, amit keresel (ill. a cikk linkel több multi column megoldást)
BlackY
--
"en is amikor bejovok dolgozni, nem egy pc-t [..] kapcsolok be, hanem a mainframe-et..." (sj)
- A hozzászóláshoz be kell jelentkezni
Ha a piros és a cyan helyett egy van akkor nincs gondom. Azt még összeraktam mindenféle generátor nélkül. Viszont ha azt meg akarom osztani két részre akkor szétesik az egész.
Akkor tudtam csak elosztani két részre ha meghatároztam mindkettőnek a függőleges méretét %-ban vagy px-ben.
- A hozzászóláshoz be kell jelentkezni
Tisztan css-sel nem tudtam megcsinalni, de kis javascript segitseggel igen.
Nem tudom igy is jo-e. Ha igen, akkor kell meg el kell javascriptbol kapni a window resize eventet es arra is meg kell hivni a fuggvenyt ahol updateled ezeket a mereteket.
- A hozzászóláshoz be kell jelentkezni
Értem az elképzelést, bár méretezve az ablakot mégsem az igazi. Se vízszintesen se függőlegesen nem "nyúlik".
Bár igaz, hogy még nem próbáltam a "valóságban" csak ebben a szerkesztőben.
- A hozzászóláshoz be kell jelentkezni
Azert irtam, hogy a resize eventet el kell kapni.
A ket content div scrollozasa nem megoldott, azt meg kell probalni, hogy hogy lehet megoldani.
- A hozzászóláshoz be kell jelentkezni
Ilyenre gondoltam. Bár a jobboldali menü 1-1 pillanatra látszik csak átméretezéskor.
Igaz jobb lenne csak css-el, de ha igy működik akkor ez lesz a megoldás.
Még utánanézek majd a lentebb javasolt táblás megoldásoknak is.
- A hozzászóláshoz be kell jelentkezni
Eleg bena vagyok css-ben, szoval jo esellyel van elegansabb megoldas.
Mindenesetre folyamatosan a CSS limitacioiba utkozom en is, es mivel nem 100%-ban ezzel toltom az idomet, nem egyertelmu egy-egy problemanal, hogy mi a megoldas.
- A hozzászóláshoz be kell jelentkezni
Mit értesz az alatt, hogy "függőlegesen kitölti a helyet"? Az egyszerre a képernyőn megjelenő helyet töltse ki?
- A hozzászóláshoz be kell jelentkezni
Szerintem eleve rosszul indulsz neki, nem elég pontos a definíció. Mit jelent az, hogy "kitölti a helyet"? Minek az x%-át kell kitölteni? Van egy mérete a böngésző ablaknak, ami változhat, ha user átméretez. Van egy mérete egy csomó DOM elemnek, ami tud a tartalomhoz igazodni bizonyos korlátok között. És még ezen felül egy DOM elem mérete és a tartalmának mérete nem szükségszerűen egyforma, ez az az eset, amikor scrollozódik a tartalma. És még akár azt is figyelembe lehet venni, ha user zoomol ki-be.
- A hozzászóláshoz be kell jelentkezni
Egyszeru ravagni, hogy rosszul indul neki. Teny, hogy nincs tulspecifikalva a kerdes, de ha megnezed az abrat, es a leirast, akkor az adodik, hogy azt szeretne, hogy az oldal kitoltse a bongeszo ablakat, ne legyen scrollbar magan az ablakon. Az also content block legyen fix meretu, es a felette levo content block pedig toltse ki a szabadon marado helyet, ami az ablak meretebol es az also blokk meretebol adodoan marad. Az also es a felso blokkban levo tartalom tulcsordulasa eseten legyen egy scrollbar az also es a felso blokkon magan, de ne a teljes weboldalon. Persze lehet, hogy felreertettem.
- A hozzászóláshoz be kell jelentkezni
Így gondoltam.
- A hozzászóláshoz be kell jelentkezni
A kitölti a helyet, azt úgy értem hogy a böngészőablakban lévő helyet. Ha el van osztva kétfelé valami amiben az egyik terület fix méretű, akkor másik kitölti a maradék helyet.
Ez ablakmérettől függ, hogy mekkora lesz. Ha lehet akkor lehessen minimális mérete akár az egész layout-nak. Ha ettől kisebb a böngésző ablak, akkor kelljen csak scrollozni a böngészőn. Egyes div-ek belül scrollozhatónak kell lenniük.
- A hozzászóláshoz be kell jelentkezni
Bocsi, most már túl késő van gondolkodni, úgyhogy kódot nem produkálok, de ezt egy sima táblázattal meg lehet csinálni, nem kell ehhez semmi trükközés, se komplex css, főleg nem JS
Ha valaki azzal jönne, hogy a táblázat nem szemantikus (a sereg div se) akkor meg lehet csinálni divekkel, seciton-ökkel, stb, csak használni kell a display: table, table-row, table-cell css szabályokat az elemeken, és úgy csinálni mint ha táblázat lenne.
- A hozzászóláshoz be kell jelentkezni
Utánanézek ennek az iránynak is.
- A hozzászóláshoz be kell jelentkezni
A táblázattal nem az a baj, hogy nem szemantikus (na jó, egy kicsit de), hanem hogy amíg be nem tölti a böngésző a /table-t addig vagy nem jelenít meg semmit, vagy akár többször átrendezi az oldalt ami nem túl esztétikus.
- A hozzászóláshoz be kell jelentkezni
Na de csak akkor méretezi át, ha a méret a tartalmon múlik, ha fix mérettel dolgozol, vagy a böngésző méretéhez igazítod, akkor nem rendezi át.
- A hozzászóláshoz be kell jelentkezni
Nem mintha div-ek esetében nem rángatna össze-vissza ugyanúgy az oldal. Irgalmatlan idegesítő, ennél még a Flash is nagyságrendekkel felhasználóbarátabb volt.
- A hozzászóláshoz be kell jelentkezni
Egy megoldás ami a flex modellt használja: http://jsfiddle.net/krb47px7/1/
Modern böngészőt igényel.
- A hozzászóláshoz be kell jelentkezni
Nézz utána a Bootstrap-nek is (css framework), abban előre vannak definiálva hasábok, amikkel tudsz játszani! :)
-------------
DevMeme, fejlesztői pillanatok...
- A hozzászóláshoz be kell jelentkezni
Mennyire sürgős?
5-re hazaérek megnézem.
pch
--
http://www.buster.hu "A" számlázó
--
- A hozzászóláshoz be kell jelentkezni
Ma még én is gyakorlatozok rajta, de szerintem olyannak több esélye van aki ilyet gyakrabban csinál.
Nem sürgős a dolog, mivel addig tudok mást csinálni.
- A hozzászóláshoz be kell jelentkezni
Azért csak megpróbáltam:
http://jsfiddle.net/0vvaxvxe/
Erre gondoltál?
pch
--
http://www.buster.hu "A" számlázó
--
- A hozzászóláshoz be kell jelentkezni
Elsőre nem 100%-ban azt csinálja mait kellene.
Szerintem már összehegesztek valamit abból amilyen tippeket itt kaptam.
- A hozzászóláshoz be kell jelentkezni
Bennem felmerült ez is:
- A hozzászóláshoz be kell jelentkezni
Hasznalj bootstrap 3-t es a body tagek koze tedd be az alabiakat
<div class="row">
<div class="col-md-12 bg-primary">blue</div>
<div class="clearfix"></div>
<div class="col-md-1 bg-primary" style="width:100px; min-height:600px;">lila</div>
<div class="col-md-9">
<div class="col-md-12 bg-info" style="min-height:300px; overflow: scroll;">cyan</div>
<div class="col-md-12 bg-danger" style="height:300px; overflow: scroll;">piros</div>
</div>
<div class="col-md-1 bg-primary" style="width:100px;min-height:600px">Zold</div>
</div>
- A hozzászóláshoz be kell jelentkezni
Úgy látom erre nem 10 perc kell majd, hogy átnézzem. Van minden ami csak kellhet előre legyártva.
- A hozzászóláshoz be kell jelentkezni