Layout probléma
Sziasztok, már 2 órája szenvedek legyetek szívesek segítsetek.
http://img266.imageshack.us/img266/696/layoutbr.jpg
ezt a layoutot szeretném megvalósítani, előszőr kezdtem úgy hogy minden staticon van,és float lefttel szépen sikerült is.
a felépités igy néz ki:
<div id=container>
<div id=sidebar>
<div id=top>
<div id=logo></div>
<div id=mainmenu></div>
</div>
<div id=submenu></div>
</div>
<div id=picture></div>
<div id=content></div>
<div id=footer></div>
</div>
#container {
width: 900px;}
#sidebar {
width: 225px;
float: left;}
#top {
height: 410px;
width: 225px;}
#logo {
height: 140px;
width: 140px;
float: left;}
#mainmenu {
float: left;
width: 225px;
height: 260px;}
#submenu {
float:left;
width:225px;}
#picture{
height: 360px;
width: 675px;
float: right;}
#content {
width: 655px;
float: right;
#footer {
width: 900px;
height: 45px;
float: left;
}
nos ezzel az volt a probléma,hogy ha a content részbe annyi szöveget tettem ami már letolja a footert, akkor az egész oldal megugrott balra picit, és mikor főoldalról rákattintok egy ilyenre az elég csúnya. Próbálgattam mindenfélét, sidebar tartalmát absolutera csináltam és a submenu magasságát 100%ra rakva ez a jelenség már nincsen viszont nem annyira böngészőkompatibilis, lényeg a lényeg hogy ti hogy csinálnátok ezt a layoutot?előre is kösz
■ http://img266.imageshack.us/img266/696/layoutbr.jpg
ezt a layoutot szeretném megvalósítani, előszőr kezdtem úgy hogy minden staticon van,és float lefttel szépen sikerült is.
a felépités igy néz ki:
<div id=container>
<div id=sidebar>
<div id=top>
<div id=logo></div>
<div id=mainmenu></div>
</div>
<div id=submenu></div>
</div>
<div id=picture></div>
<div id=content></div>
<div id=footer></div>
</div>
#container {
width: 900px;}
#sidebar {
width: 225px;
float: left;}
#top {
height: 410px;
width: 225px;}
#logo {
height: 140px;
width: 140px;
float: left;}
#mainmenu {
float: left;
width: 225px;
height: 260px;}
#submenu {
float:left;
width:225px;}
#picture{
height: 360px;
width: 675px;
float: right;}
#content {
width: 655px;
float: right;
#footer {
width: 900px;
height: 45px;
float: left;
}
nos ezzel az volt a probléma,hogy ha a content részbe annyi szöveget tettem ami már letolja a footert, akkor az egész oldal megugrott balra picit, és mikor főoldalról rákattintok egy ilyenre az elég csúnya. Próbálgattam mindenfélét, sidebar tartalmát absolutera csináltam és a submenu magasságát 100%ra rakva ez a jelenség már nincsen viszont nem annyira böngészőkompatibilis, lényeg a lényeg hogy ti hogy csinálnátok ezt a layoutot?előre is kösz
Görgetősáv
de,lehet,mert már minden mást
próba ki így
sztem túl sokat float-oltál, inkább csak ott kéne, ahol nagyon muszuáj(#main és #sidebar). ja igen csináltam neked egy #main id-jű divet :)
bemásolom és ha van kérdésed, írj nyugodtan!
<div id="container"> <div id="sidebar"> <div id="top"> <div id="logo"><a href="index.html" title="nyitóoldal"><img src="images/logo.png" alt="" /></a></div> <div id="mainmenu"> <ul id="nav"> <li><a href="#" title="nav 1">nav 1</a></li> <li><a href="#" title="nav 2">nav 2</a></li> <li><a href="#" title="nav 3">nav 3</a></li> </ul> </div> </div> <div id="submenu"> <ul id="subnav"> <li><a href="#" title="subnav 1">subnav 1</a></li> <li><a href="#" title="subnav 2">subnav 2</a></li> <li><a href="#" title="subnav 3">subnav 3</a></li> </ul> </div> </div><!-- sidebar --> <div id="main"> <div id="picture"></div> <div id="content"> <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.</p> </div><!-- content --> </div><!-- main --> <div class="clear"></div> <div id="footer"></div> </div><!-- container -->
a css-ben a * { ... } miatt meg fognak lincselni :D annak helyére egy "CSS reset" kellene, majd guglizz rá, hogy mi ez, egy ilyen css reset pl itt érhető el: http://meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/
* { margin: 0; padding: 0; list-style: none; border: 0; outline: 0; } body { text-align: center; } #container { position: relative; margin: 20px auto; width: 900px; text-align: left; background: #eee; } #sidebar { width: 225px; display: inline; float: left; background: #ccc; } #top { width: 225px; background: #aaa; } #logo { width: 225px; } #logo a { display: block; margin: 0 auto; height: 140px; width: 140px; background: #333; } #logo a img { display: block; width: 140px; height: 140px; } #mainmenu { padding: 10px 0; width: 225px; background: #777; } #submenu { padding: 10px 0; width:225px; background: #555; } #nav, #subnav { display: block; position: relative; margin: 0 10px; } #main { display: inline; float: right; width: 675px; background: #888; } #picture{ width: 675px; height: 360px; background: #444; } #content { position: relative; margin: 10px auto; width: 655px; background: #eee; } #footer { width: 900px; height: 45px; background: #555; } .clear { clear: both; display: block; float: none; height: 0; line-height: 0; font-size: 0; }
köszi szépen sokat
Másik problémám meg a böngésző kompatibilitás, találtam egy ilyen parancsot amivel különböző böngészökhöz különböző stylesheetet lehet hozzárendelni de nem igazán müködik, és arról se találok normális leirást,harmadik meg hogy font beágyazáshoz tudsz valamit a @font-face..... css fájlba irásán kivül mert azt is csak a legújabb böngészők támogatják kb,köszi:)
footer a legalján
főelg IE különböző változtaira szoktak külön css-t írni, nem olyan bonyi szerencsére :) /ill tudsz többek között nyomtatáshoz is csinálni külön, annál csak a media="print"-et kell megadnod media="screen, projection" helyett/
------
ie6-ra példa(conditional comment):
<link rel="stylesheet" type="text/css" href="css/ie-6.css" charset="utf-8" media="screen, projection" />
<script tpye="text/javascript" src="js/pngfix.js"></script>
<![endif]-->
ebben azt hiszem minden benne van:
<!--[if IE 6]> ha IE6 <![endif]-->
<!--[if !IE 6]> ha nem IE6 <![endif]-->
<!--[if IE lt 6]> ha kisebb, mint IE6 <![endif]-->
<!--[if IE lte 6]> ha kisebb vagy egyenlő, mint IE6 <![endif]-->
<!--[if IE gt 6]> ha nagyobb, mint IE6 <![endif]-->
<!--[if IE gte 6]> ha nagyobb vagy egyenlő, mint IE6 <![endif]-->
megadhatod simán is, hogy IE és az akkor az minden egyes IE verzióra vonatkozik.
------
@font-face pedig:
neked köszönhetően találtam egy iszonyatosan jó megoldást egy generátorral:
http://www.fontsquirrel.com/fontface/generator
kitallózod a font-ot, feltöltöd, majd legenerálja neked szépen... letöltöd a zip-et, aminek a demo.html-ében van egy "stylesheet.css" - itt lesz a @font-face kódja és a zip-ben még ott fognak figyelni a különbüző böngészőkre szánt font-formátumok(eot, svg, ttf, woff). fel kell őket tölteni a tárhelyre és már csak az elérési útakra kell figyelni :) mondjuk én csak chrome-mal néztem, ott szuper, de dícsérték!
köszi szépen majd kipróbálom
<!--[if IE]><![endif]-->igy ,akkor a nem ieseket is igy kell kommentbe hozzárendelni vagy azt csak simán ahogy szokás?én úgy adtam meg hogy if !IE de az meg nem ment, nagyon kösz hogy ilyen segítőkész vagy!rendes tőled
if !IE
igazából az if !IE-s lehetőséget még sosem használtam, csak leírtam minden eshetőséget.
úgy szokott lenni, hogy van egy alap css-ed, amit nem is raksz feltételbe egyáltalán, tehát az globálisan vonatkozik minden böngészőre, és akkor az IE-s bugokat úgy javítgatod ki, hogy a fenti módszerrel 6-os vagy a 7-es bugjai miatt, felülírod a neccesen viselkedő elemek tulajdonságait.
nekem most éppen így néz ki a dolog az egyik oldalnál:
<link rel="stylesheet" type="text/css" href="css/layout.css" charset="utf-8" media="screen, projection" />
<link rel="stylesheet" type="text/css" href="css/typography.css" charset="utf-8" media="screen, projection" />
<link rel="alternate" type="text/css" href="css/print.css" charset="utf-8" media="print" />
<!--[if IE 6]><link rel="stylesheet" type="text/css" href="css/ie-6.css" charset="utf-8" media="screen, projection" /><script tpye="text/javascript" src="js/pngfix.js"></script><![endif]-->
<!--[if IE 7]><link rel="stylesheet" type="text/css" href="css/ie-7.css" charset="utf-8" media="screen, projection" /><![endif]-->
min height
js-sel?
ha nem jó így, akkor marad vmilyen js megoldás.