Ragaszkodó réteg probléma.
Sziasztok, van egy kis problémám. Létrehoztam egy egyszerű teszt html oldalt, mert előfordul, hogy belefutok egy hibába, és nem jövök rá mi az az apró gond ami miatt két réteg ragaszkodik egymáshoz.
Van, egy egyszerű tartalom div, amiben egy szoveg div van.
Ha megváltoztatom a #szoveg { margin:0 auto; ->> pl. margin: 10px auto; } akkor a fölötte lévő tartalom réteg is lejjebb megy 10px-ellel.
Ez mitől van?
HTML:CSS:
■ Van, egy egyszerű tartalom div, amiben egy szoveg div van.
Ha megváltoztatom a #szoveg { margin:0 auto; ->> pl. margin: 10px auto; } akkor a fölötte lévő tartalom réteg is lejjebb megy 10px-ellel.
Ez mitől van?
HTML:
<div id="befoglalo">
<div id="fejlec"><div class="rejtett"><h1>Teszter Pub</h1></div></div>
<div id="tartalom"> <!-- <a href="index2.html"> -->
<div id="szoveg">Belépés</div>
</div>
<div id="lablec"></div>
<div id="plusz"></div>
</div>
#befoglalo {
margin: 0 auto;
padding:0;
width:1180px;
height:800px;
}
#fejlec {
margin: 0 auto;
padding:0;
width:1180px;
height:200px;
background-image: url(elemek/ikep/fej.jpg);
z-index:1;
}
#tartalom {
margin:0 auto;
padding:0;
width:1180px;
height:400px;
background-image: url(elemek/ikep/kozep.jpg);
background-repeat: no-repeat;
z-index:2;
}
/*EZ A RÉTEG AMIT SZERETNÉK A TARTALOM KÖZEPÉRE IGAZÍTANI, DE NEM SIKERÜL..*/
#szoveg {
margin: 20px auto;
padding:0;
width:82px;
height:22px;
/* background-image: url(elemek/ikep/belep.jpg);
background-repeat:no-repeat; */
text-align: center;
z-index:4;
}
#lablec {
margin:0 auto;
padding:0;
width:1180px;
height:200px;
background-image: url(elemek/ikep/lab.jpg);
z-index:3;
}
#plusz { clear:both; } /*A lebegések ne kavarjanak be...*/
.rejtett { display:none; }
.kiemelt { font-weight: bolder; color:#ff6600;}
Elfelejtettem:
nem látszik a hiba
Nálam nem jelentkezik a hiba.
FF 3.6.3
IE 8
Opera 10.53
Esetleg lehet, hogy abban a részben van a hiba, amit nem szúrtál be..?
Nálam a kód:
Nem értem
A
#szoveg
CSS-e eleve a következőképp néz ki:#szoveg
-re vonatkozik? És mi van a#szoveg
fölött? Jó lenne látni egy teljesebb HTML-t mert ennek így nem sok értelme van.Nézd meg újra...
A szöveg benne van a tartalom rétegben, és akkor néz ki jól a háttér meg mnden ha a #szoveg teteje 0px-en van, ha megnövelem akkor lehúzza a szöveg réteg a tartalom réteget is, és mindent ami alatta van eltol..
Gábor
Részben megvan a hiba, oka. Nem akartam bnele semmi mást a tartalom rétegbe, ha beleírok egy kis szöveget, akkor is lesz térköz (gondolom mert <p> még nem igazán van css-ben leírva), de már nem ragaszkodik.. Viszont ez egy főként köszöntő oldalként funkcionáló index lapnál nekem nem kell, hameg display:none;-t használok megint ragasztózik...
Az alap weboldalt ami miatt készült ez a tesztoldal azt most nem raknám be kicsit sok lenne, de itt az egész tester..
Ez is sok, de előre is köszi, elég idegesítő hiba, az eddigi weboldalaimnál, nem ütköztem ebbe a problémával, néha bezavart egy-egy float de ekkora hülyeséget, még nem csináltam... XD
HTML:
CSS:
Teteje
Mivel nem tudom hozzáképzelni mi az ami hiányzik, és mi van eltolva. Nem lehet, hogy paddingot akarsz használni? Tudod, mivel nem látszanak a háttér képeid, és az egész egy nagy lila háttéren 2 sor szöveg, nehéz elképzelni, hol lehet hiba. Mondjuk ha linket adtál volna, akkor talán lehetne látni is, mi a problémád.
Margin..
teteje jobb alsó bal térköz most komolyan ennyire nem volt értehető?
Ha igen akkor bocs..
Ami a baj, hogy a belső #szoveg réteg ragaszkodik, a tartalom réteghez, azóta úgy oldottam meg, hogy nem üres a tartalom réteg, hanem, van a tartalomban egy <br> és már nem ragaszkodik, hozzá.
Linket, sajnos nem tudok, mutatni..
1/2 megoldás
A baj, hogy a "#tartalom" doboznak, mintha nem lenne teteje.
Nem túl szép, de működő megoldás, ha border-t ("border-top"-ot) állítasz a "#tartalomra".
Talán valaki ismer valami elegánsabb megoldást..
üdv, Gábor
Köszönet
Ha, nem csak maga a #szoveg réteg van, a #tartalom rétegben, akkor rendesen működik a pozícionálás.
Ha rejtett tartalmat rakok bele akkor sem működik ( display: none; ), viszont én nem akartam csak pár háttérből álló képet összerakni, ezért egy <br>-t raktam be és így már működik.
Nem elegáns, de múködik.
Azért, ha valaki tud jobbat szebbet, az írja már meg! Köszi!