Frame vagy Div újra...
Üdv mindenkinek!
Az elmúlt hetekben igen sokat böngésztem ezt az oldalt - és sok mást is - mégsem jutok "dűlőre".
Web területen kezdőnek számítok, csak helyi gépre fejlesztettem eddig (Delphi).
Nagyon sok fórumtémában olvastam, hogy "frame-et ne használj, frame elavult, stb.", de igazán "épkézláb" magyarázatot nem találtam a vakok problémáján kívül.
Azt látom, hogy "nagyon nem divat", de mi a konkrét technikai oka?
Ha úgy tetszik: "divatból" div-ekkel szeretném megoldani az alábbi "frame-szerkezetet":
---------------------------------------
TOP
---------------------------------------
----|
----|
----|
----|
LEFT| MAIN
----|
----|
----|
----|
ahol TOP és LEFT 130px magas ill. széles, TOP kitölti a lap szélességét, LEFT a TOP alatti maradék magasságot, MAIN pedig a maradék területet.
TOP csak fejléc, LEFT egy menüsor, MAIN a tartalom, továbbá MAIN függőlegesen görgethető, vízszintesen "betördeli" (wordwrap) magát.
Ha div-vel lehet ilyet, pontosan hogyan?
Azt még nem döntöttem el, hogy a "kereteket" include-oljam a lapokba, vagy index.php "lapozzon". Talán az előbbi lesz, vagy is-is.
És ha div-be include minden menüclickre, mi a helyzet a menüvel? Vagyis ahova kattintott, az megmarad-e a:active-nak? (LEFT-ben lenne menü, CSS-el kevés képpel is szépet lehet az a:xxx tulajdonságokkal, de ott érdekes lenne, hogy include után is active "maradjon" az, ahova klattyolt a T.Júzer.)
Van egypár CSS tulajdonság, ami nemigazán tiszta (pl. Z-index), ha van jó CSS doksi (esetleg magyar), kérnék hozzá linket.
(Számomra a jó azt jelenti, hogy A-Z-ig összes elérhető tulajdonság, minden hozzájuk rendelhető érték, magyarázattal.)
Remélem a probléma megfogalmazása megüti a tűrhetőt.
Segítségeteket előre is nagyon köszönöm!
■ Az elmúlt hetekben igen sokat böngésztem ezt az oldalt - és sok mást is - mégsem jutok "dűlőre".
Web területen kezdőnek számítok, csak helyi gépre fejlesztettem eddig (Delphi).
Nagyon sok fórumtémában olvastam, hogy "frame-et ne használj, frame elavult, stb.", de igazán "épkézláb" magyarázatot nem találtam a vakok problémáján kívül.
Azt látom, hogy "nagyon nem divat", de mi a konkrét technikai oka?
Ha úgy tetszik: "divatból" div-ekkel szeretném megoldani az alábbi "frame-szerkezetet":
---------------------------------------
TOP
---------------------------------------
----|
----|
----|
----|
LEFT| MAIN
----|
----|
----|
----|
ahol TOP és LEFT 130px magas ill. széles, TOP kitölti a lap szélességét, LEFT a TOP alatti maradék magasságot, MAIN pedig a maradék területet.
TOP csak fejléc, LEFT egy menüsor, MAIN a tartalom, továbbá MAIN függőlegesen görgethető, vízszintesen "betördeli" (wordwrap) magát.
Ha div-vel lehet ilyet, pontosan hogyan?
Azt még nem döntöttem el, hogy a "kereteket" include-oljam a lapokba, vagy index.php "lapozzon". Talán az előbbi lesz, vagy is-is.
És ha div-be include minden menüclickre, mi a helyzet a menüvel? Vagyis ahova kattintott, az megmarad-e a:active-nak? (LEFT-ben lenne menü, CSS-el kevés képpel is szépet lehet az a:xxx tulajdonságokkal, de ott érdekes lenne, hogy include után is active "maradjon" az, ahova klattyolt a T.Júzer.)
Van egypár CSS tulajdonság, ami nemigazán tiszta (pl. Z-index), ha van jó CSS doksi (esetleg magyar), kérnék hozzá linket.
(Számomra a jó azt jelenti, hogy A-Z-ig összes elérhető tulajdonság, minden hozzájuk rendelhető érték, magyarázattal.)
Remélem a probléma megfogalmazása megüti a tűrhetőt.
Segítségeteket előre is nagyon köszönöm!
Nagyon sok fórumtémában
Azt látom, hogy "nagyon nem divat", de mi a konkrét technikai oka?
És a többi?
Meg tudnád mondani, hogy oldjam meg div-ekkel? Fix méretekig eljutottam, de az nem megoldás különböző felbontások ill. böngészők miatt. Nem tudok mit kezdeni a "maradék" területekkel.
Esetleg CSS doksi?
Miért nem műkszik itt a "<b>"?
SitePoint CSS Reference W3C
W3C Cascading Style Sheets, level 2 CSS2 Specification
Lásd a hozzászólás mező alatti szöveget, és a További lehetőségek linket.
alapvetően pár megközelítés nem a legjobb
Kiindulási alapnak ez jó:
Ha valamit fixen kint akarsz tartani a képernyőn egy divben akkor azt lentihez hasonló css-el lehet, de a régebbi böngészőknél elég nagy káosz van e téren. Az z-index a térbeli elhelyezkedést jelenti, minél nagyobb a z-index, annál "fentebb" van az elem. Az 5-ös indexű, kitakarja a 4-es indexűt.
Mindenkinek köszönöm
Csak ()-ben kérdezném, Poetro, nem kötöszködni akarok:
Ha frame esetén include rakja be mindhárom tartalmat, akkor se "látja" a menüt keresőmotor, bookmark, stb?
Bocs, ezt elnéztem, include-dal a próbában csak a src="..."-ot raktam a frame-be...
OK, ha fene-fenét eszik is, DIV. Majd megalkuszom valamiben, bár nem szokásom alkudni... Hajrá CSS, mégegyszer köszönöm!
Majd' el felejtem...
Volt/van egy B tervem:
Úgyis lesz session-azonosítás (látogatottság miatt), ezért ha "most jött" user, elsőre pici JavaScript-et kap, ami rögtön vissza is hívja a lapot screen.Width ill. .Heigth értékekkel. Ezt el tudom menteni $_GLOBALS-ba vagy kukiba, és új menü betöltések előtt ebből "kiszámolom" a divek hiányzó méreteit.
Miért nem jó ez szerintem:
Amit leírtál a hozzászólásod
Ha pedig egy képnézegető nem működik JavaScript nélkül, akkor ott nagyon, nagyon, nagyon nagy bajok vannak.
Kedves Öcsém
...és akár az egész.
Látom, te egy igen okos srác vagy, én meg egy gányoló.
Szoktál pozitív dolgokat is írni, vagy azt csak magadról?
Nem vetted észre, hogy amit írtam, az egyfajta önkritika, felesleges tovább kritizálni. Azért írtam le, mert én belefutottam, eltöltöttem vele felesleges x időt, és nem akarom, hogy más is belefusson. Láttam a te "személyes oldalad", az aztán FULL.
Azt csinálsz, amit akarsz.
+1
Ami lett
<html lang="hu"><head>
<meta content="text/html; charset=ISO-8859-2" http-equiv="content-type">
<title>index</title>
<style type="text/css">
body { margin: 0px;
right: 0px;
bottom: 0px;
background-color: rgb(51, 102, 255);
left: 0px;
top: 0px;
height: 100%;
width: 100%;
position: absolute;
z-index: 1;
overflow: auto;
}
.top { border-color: rgb(96, 96, 96);
border-width: 0px;
margin: 0px;
padding: 0px;
background-color: rgb(66, 168, 68);
width: 100%;
top: 0px;
left: 0px;
right: 0px;
bottom: 0px;
overflow: hidden;
height: 130px;
position: absolute;
z-index: 4;
}
.left { border-color: rgb(96, 96, 96);
border-width: 0px;
margin: 0px;
padding: 130px 0px 0px;
background-color: rgb(144, 125, 168);
left: 0px;
right: 0px;
bottom: 0px;
overflow: hidden;
width: 130px;
position: absolute;
z-index: 3;
height: 100%;
top: 0px;
}
.main { border-color: rgb(96, 96, 96);
border-width: 0px;
margin: 130px 0px 0px 130px;
padding: 10px;
background-color: rgb(235, 221, 197);
z-index: 2;
visibility: visible;
bottom: 0px;
right: 0px;
overflow: visible;
position: relative;
top: 0px;
left: 0px;
}
</style></head>
<body>
<div class="top" id="top1"><?php include('_private/oldal1.htm'); ></div>
<div class="left" id="left1"><?php include('_private/oldal2.htm'); ?></div>
<div class="main" id="main1"><?php include('_private/hospincer.htm'); ?></div>
<?php
//include('_private/hospincer.txt');
?>
</body></html>
Szóval ez lett belőle, aki szerint gányolás, azt harapja meg a krokodil.
Megjegyzem, a js ötletet azért írtam le fentebb, mert láttam már ezen az oldalon hasonló problémára olyan "profik" által adott választ, amiben mindenütt fix pixel értékek szerepeltek (gondoljunk arra, hogy laptop-ot ma már majdhogynem kizárólag wxga kijelzővel vehetsz, ellenben asztalin még mindig az xga a többség); és ha valaki hasonló cipőben jár, NE akarjon ilyen csiki-csukiba menni, mert lassú lesz.