
- 1
- 2

CSS-Differenzen beim Positionieren
So ich muss mal wieder hier im Forum Fragen loswerden... In diesem Fall zwei Fragen, die aber zusammenhängen!
1. kann jmd den Grund, anhand dieser Bilder, für die vertikale Verschiebung meiner Navigation nachvollziehen?
(Opera, IE sind korrekt ::: FF, Safari, Chrome falsch)
korrekt:
2. Meine Überlegungen zielen bisher auf Conditional Comments bzw. Browserspeziefische Stylesheets ab, doch ich habe nicht die leiseste Ahnung in Beziehung auf die genannten Möglichkeiten.
Weil ich bisher die Begriffe nur gegoogelt habe und aus dem Kauderwelsch nicht schlau geworden bin, stell ich die Frage mal lieber hier.
wenn mein Anliegen unklar ist bitte nachfragen
mfg Inceptor
1. kann jmd den Grund, anhand dieser Bilder, für die vertikale Verschiebung meiner Navigation nachvollziehen?
(Opera, IE sind korrekt ::: FF, Safari, Chrome falsch)
korrekt:
falsch:
Spoiler
![]()
Spoiler
![]()
2. Meine Überlegungen zielen bisher auf Conditional Comments bzw. Browserspeziefische Stylesheets ab, doch ich habe nicht die leiseste Ahnung in Beziehung auf die genannten Möglichkeiten.
Weil ich bisher die Begriffe nur gegoogelt habe und aus dem Kauderwelsch nicht schlau geworden bin, stell ich die Frage mal lieber hier.
wenn mein Anliegen unklar ist bitte nachfragen
mfg Inceptor
mfg Inceptor
mein unfertiges Projekt findet ihr hier: Viewport
mein unfertiges Projekt findet ihr hier: Viewport
Könntest Du das Stylesheet mal posten? Eine Möglichkeit könnte zum Beispiel sein, dass die Bilder als "Block"-Element definiert werden müssen. Könnte auch an margin oder ähnlichem liegen. Anhand der Bilder ist das schwer zu sagen
.
Gruß, Toast
Edit: Können bei absoluter Positionierung (natürlich auch bei anderen) auch Rundungsfehler o.ä. sein, wobei ich davon aber eher weniger ausgehe.
.Gruß, Toast
Edit: Können bei absoluter Positionierung (natürlich auch bei anderen) auch Rundungsfehler o.ä. sein, wobei ich davon aber eher weniger ausgehe.
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Toast« (29. Mai 2011, 19:03)
Hey conditional comments etc sind im Grunde nur Browserweichen. Es gibt da unzählige Möglichkeiten ich selbst nutze meist sogenannte "css-hacks". Damit kannst du einzelne Styles spezifisch für jeden Browser anwenden.
Wie ist denn die Adresse deiner Website, sodass man sich das Ganze einmal ansehen kann? Denn bevor man solche Verschiebungen auf die unterschiedlichen "Interpretationsarten" der Browser schieben kann muss man erst einmal sehen ob es nicht einen Fehler bzw. eine "Ungünstigkeit" im Code gibt.
Gruß
Phos
Wie ist denn die Adresse deiner Website, sodass man sich das Ganze einmal ansehen kann? Denn bevor man solche Verschiebungen auf die unterschiedlichen "Interpretationsarten" der Browser schieben kann muss man erst einmal sehen ob es nicht einen Fehler bzw. eine "Ungünstigkeit" im Code gibt.
Gruß
Phos
All rights reserved, all wrongs observed.
···•(_.·´¯)··•¦PhoS¦•··(¯`·._)•···
···•(_.·´¯)··•¦PhoS¦•··(¯`·._)•···
@toast wie meinst du das mit den Blockelementen?
und wegen dem stylesheet... wollt ihr euch wirklich durch das ganze Stylesheet kämpfen oder soll ich nur die Passagen mit background-images posten? weil außer Backgrounds hab ich keine Bilder auf meiner Page.
und
@phosGEN
ich würde dir ja gerne einen Link geben aber
die Page ist noch nicht online und mein Webspace genauso wenig
mach den Admins Dampf und ich schick der einen Link
mfg inceptor
und wegen dem stylesheet... wollt ihr euch wirklich durch das ganze Stylesheet kämpfen oder soll ich nur die Passagen mit background-images posten? weil außer Backgrounds hab ich keine Bilder auf meiner Page.
und
@phosGEN
ich würde dir ja gerne einen Link geben aber
die Page ist noch nicht online und mein Webspace genauso wenig
mach den Admins Dampf und ich schick der einen Link
mfg inceptor
mfg Inceptor
mein unfertiges Projekt findet ihr hier: Viewport
mein unfertiges Projekt findet ihr hier: Viewport
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Inceptor« (29. Mai 2011, 22:21)
Am besten brauchen wir sowhl den HTML als auch den CSS Part komplett (vielleicht als zip?). Am besten wäre es natürlich Live im Browser, da man dort mit Tools wie Firebug, Dragonfly etc. wesentlich schneller zum Ziel kommen kann. Aber wenn das nicht möglich ist dann heisst es wohl warten oder in den sauren Apfel beißen und das Ganze am editor durchforsten.
Gruß
Phos
Gruß
Phos
All rights reserved, all wrongs observed.
···•(_.·´¯)··•¦PhoS¦•··(¯`·._)•···
···•(_.·´¯)··•¦PhoS¦•··(¯`·._)•···
Also dann poste ich das mal ... aber nicht lachen, bin ja noch Anfänger
in zwei teilen .... Teil1 html:
in zwei teilen .... Teil1 html:
Spoiler
![]()
HTML
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html> <head> <title>MPW ===> Mein Platz Im Web <===</title> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"> <link rel="shortcut icon" href="mpw-favicon.ico"> <link rel="stylesheet" type="text/css" href="mpw.css" /> </head> <body> <div id="body"> <!--__________________________________________________________________________________________________________________--> <div id="oberteil"> <div class="rahmen-rechts"> <div id="kopfleiste"> <p id="logo"><a href="mpw-home.php" title="MPW - Home"> <span id="span1">MEIN-</span> <span id="span2">PLATZ-</span> <span id="span3">IM-</span> <span id="span4">WEB</span> </a> <a href="https://www.webmasterwork.com" title="WebmasterWork - Webspace-Hoster" target="_blank" id="wmw"><b>.WMW.CC</b></a></p> <div id="list"> <ul id="list-ul"> <li id="active"><a href="#">Home</a> <table cellspacing="10px" class="sublevel"> <tr> <th colspan="10">Home</th> </tr> <tr> <td><a href="#">Hauptseite</a></td> <td><a href="#">Gästebuch</a></td> <td><a href="#">Feedback</a></td> <td><a href="http://www.facebook.com" target="_blank">Facebook</a></td> <td><a href="#">Kontakt</a></td> </tr> </table> </li> <li><a href="#">Inhalt</a> <table cellspacing="10px" class="sublevel"> <tr> <th colspan="10">Inhalt</th> </tr> <tr> <td><a href="#">Platzhalter</a></td> <td><a href="#">Platzhalter</a></td> <td><a href="#">Platzhalter</a></td> <td><a href="#">Platzhalter</a></td> </tr> </table> </li> <li><a href="#">Multimedia</a> <table cellspacing="10px" class="sublevel"> <tr> <th colspan="10">Multimedia</th> </tr> <tr> <td><a href="#">Filme</a></td> <td><a href="#">Musik</a></td> <td><a href="#">Bilder</a></td> </tr> </table> </li> <li><a href="http://browsershots.org/" target="_blank">Browsershots</a> <table cellspacing="10px" class="sublevel"> <tr> <th colspan="10">Browsershots</th> </tr> <tr> <td><a href="#">Legen...</a></td> <td><a href="#">...wait for it...</a></td> <td><a href="#">...dary</a></td> </tr> </table> </li> </ul> </div> </div> </div> </div> <!--___________________________________________________________________________________________________________________--> <div id="mittelteil"> <div id="left"> <div class="rahmen-un"><div class="rahmen-rechts"><div class="re-un-ecke"><div class="li-un-ecke"><div id="special-nr1"> <table id="left-table"> <tr><td class="button"><a href="#">Hauptseite</a></td></tr> <tr><td class="button"><a href="http://www.facebook.com/home.php" target="_blank">Facebook</a></td></tr> <tr><td class="button"><a href="#">Gästebuch</a></td></tr> <tr><td class="button"><a href="#">Feedback</a></td></tr> <tr><td class="button"><a href="#">Kontakt</a></td></tr> </table> </div></div></div></div></div> </div> <!--___________________________________________________________________________________________________________________--> <div id="right"> <div class="rahmen-un"><div class="rahmen-rechts"><div class="re-un-ecke"><div class="li-un-ecke"> <form action="mpw-home.php" method="post"> <table id="formular"> <tr><td class="formular"><input type="text" name="user-id" class="pass" value="User-ID" /></td></tr> <tr><td class="formular"><input type="password" name="pass" class="pass" value="Passwort" /></td></tr> <tr><td class="formular"><input type="submit" value="Absenden" id="send" /></td></tr> </table> </form> </div></div></div></div> </div> <!--___________________________________________________________________________________________________________________--> <div id="inhalt"> <h2>Hauptseite</h2> <?php if (($_POST['pass'] == "passwort") && ($_POST['user-id'] == "HighTide")) { ?> <p class="lorem-ipsum">Das hier soll mein persönlicher Platz im Web werden, da ich auf vielen Seiten die Individualität vermisse, die ich mir hier zum Beispiel mit einer eigenen Linksammlung schaffen möchte. Außerdem sind noch andere Features vorgesehen , die aber erst erdacht und gescriptet werden müssen. Aber alles in allem macht mir das ja auch Spaß, weswegen ich hierbei nicht so schnell locker lassen werde :-D</p> <?php } elseif (isset($_POST['pass'])) { ?> <p class="lorem-ipsum">haha! falsch geraten</p> <?php } ?> </div> </div> <!--___________________________________________________________________________________________________________________--> <div id="impressum"> <div id="div-impressum"><div class="rahmen-ob"><div class="rahmen-rechts"><div class="re-ob-ecke"><div class="li-ob-ecke"> <a href="#">Impressum</a> </div></div></div></div></div> </div> </div> </body> </html>
mfg Inceptor
mein unfertiges Projekt findet ihr hier: Viewport
mein unfertiges Projekt findet ihr hier: Viewport
Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »Inceptor« (30. Mai 2011, 19:16)
Teil2 css:
so soll es im übrigen aussehen:
So ich hoffe ihr könnt damit was anfangen! Wenn es Fehler gibt oder Stellen an denen man denselben Effekt auch leichter oder besser erreichen kann, dann zögert bitte nicht eure Verbesserungsvorschläge zu posten!
Vielen Dank an alle die sich jetzt die Mühe machen das jetzt durchzulesen.
Spoiler
![]()
Cascading Style Sheet
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331* { margin:0px; padding:0px; border:0px solid; font: normal normal normal 16pt "Arial"; } body { background-color:white; background:transparent url("images/sand.png") scroll repeat; } #body { margin:0px 0px 0px; width:100%; min-width:777px; height:100%; max-width:1200px; } #oberteil { background: url("images/horizont.png") scroll repeat-x; border-left:5px solid #4C4C4C; } #logo { position:relative; right:20px; white-space:nowrap; } a { text-decoration:none; color:black; outline:none; } #wmw:hover { color:#E68600; } #logo #span1:hover {color:brown;} #logo #span2:hover {color:green;} #logo #span3:hover {color:brown;} #logo #span4:hover {color:green;} /* ========= Hier beginnt der Kopfbereich mit dem "Navigationsmenue" ========== */ /* .......... Fixierung der kopfleiste ...Anfang... */ #kopfleiste { background-color:transparent; height:200px; width:100%; min-width:777px; background:transparent url("images/urlaub.png") scroll no-repeat 0px 1px; padding:26px 0 0 0; } #kopfleiste span{ font-size:40px; letter-spacing:10px; } #kopfleiste p { width:100%; min-width:777px; text-align:right; } /* .......... Fixierung der kopfleiste ...Ende... */ /* .......... Die Navigation ...Anfang... */ #list { background:transparent url("images/menu-leiste.png") scroll repeat-x center top ; height:50px; margin:105px 7px 0 0; } #list-ul { max-width:1200px; position:relative; top:16px; margin:0 118px 0px 120px; padding-bottom:10px; background:transparent url("images/rahmen-unten.png") scroll repeat-x left bottom ; } #list li { display:inline; padding:0 10px 0%; background-color:transparent; border:3px solid transparent; } #list #active { border: 3px solid brown; } #list li>a { font-weight:bold; text-decoration:none; color:green; letter-spacing:2px; outline:none; font-size:15pt; } #list li:hover>a { color:#BB0000; } .sublevel { display:none; width:100%; background-color:#4C4C4C; position:absolute; top:-85px; border:3px brown solid; } #list li:hover .sublevel { display:block; } .sublevel th { border-bottom:#707070 solid 1px; color:brown; } .sublevel td { background-color:transparent; width:1000px; border-right:#707070 solid 1px; border-bottom:#707070 solid 1px; border-left:transparent solid 1px; border-top:transparent solid 1px; } .sublevel td:hover { border-left:#363636 solid 1px; border-top:#363636 solid 1px; background-color:#5E5E5E; } .sublevel a { font-size:12pt; padding:0 100% 0 2.5px; color:green; font-weight:bold; white-space:nowrap; } /* .......... Die Navigation ...Ende... */ /* ========= Hier endet der Kopfbereich mit dem "Navigationsmenue" ========== */ #inhalt { text-align:left; font-size:16pt; margin:0px 17% 10px; } #inhalt h2 { text-align:center; letter-spacing:3px; font-size:32pt; font-weight:bold; color:black; } .lorem-ipsum { padding:5px 20px; color:black; } /* ========= Hier beginnt unsere Linke ========== */ #left { float:left; width:125px; height:400px; background-color:#4C4C4C; position:relative; bottom:7px; } #special-nr1 { background:transparent url("images/special-nr1.png") scroll no-repeat top right ; } #left-table { margin:0px 5px 0; padding:15px 0 0; } .button { background-color: transparent; width:100px; height:20px; font-size: 20px; padding: 10px 5px; margin:5px; } .button:hover a { color:brown; letter-spacing:0px; border: 3px dotted black } .button a { font-size:15pt; color:green; } /* ========= Hier endet unsere Linke ========== */ #right { float:right; width:125px; height:400px; margin:0px 0px 0px 0px; background-color:#4C4C4C; position:relative; bottom:7px; } #formular { background-color:transparent; border:transparent 5px solid; position:relative; bottom:35px; } .formular { background-color: transparent; width:103px; color:green; .formular input { font-size:12pt; } .pass { width:100px; background-color: transparent; border:3px solid brown; color:green; } #send { border:3px solid brown; padding:0px 3px; background-color: brown; color:green; width:106px; } #send:active { border:3px solid brown; background-color:#550000; } #impressum { max-width:1200px; min-width:777px; width:100%; height:25px; position:absolute; bottom:0px; clear:both; } #impressum a { color:green; } #div-impressum { width:200px; height:25px; position:relative; left:50%; margin-left:-100px; background-color:#4C4C4C; text-align:center; } .re-un-ecke { background:transparent url("images/re-un-ecke.png") scroll no-repeat bottom right ; height:inherit; } .li-un-ecke { background:transparent url("images/li-un-ecke.png") scroll no-repeat bottom left ; height:inherit; } .re-ob-ecke { background:transparent url("images/re-ob-ecke.png") scroll no-repeat top right ; height:inherit; } .li-ob-ecke { background:transparent url("images/li-ob-ecke.png") scroll no-repeat top left ; height:inherit; } .rahmen-un { background:transparent url("images/rahmen-unten.png") scroll repeat-x bottom left ; height:inherit; } .rahmen-rechts { background:transparent url("images/rahmen-rechts.png") scroll repeat-y top right ; height:inherit; } .rahmen-ob { background:transparent url("images/rahmen-oben.png") scroll repeat-x top left ; height:inherit; }
so soll es im übrigen aussehen:
Spoiler
So ich hoffe ihr könnt damit was anfangen! Wenn es Fehler gibt oder Stellen an denen man denselben Effekt auch leichter oder besser erreichen kann, dann zögert bitte nicht eure Verbesserungsvorschläge zu posten!
Vielen Dank an alle die sich jetzt die Mühe machen das jetzt durchzulesen.
mfg Inceptor
mein unfertiges Projekt findet ihr hier: Viewport
mein unfertiges Projekt findet ihr hier: Viewport
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Inceptor« (30. Mai 2011, 18:44)
Puhhh...dein Quelltext ist echt viel zu komplex für so ein einfaches Layout. DU hast da so viele Objekte die einander bedingen das du den Überblick verlierst. Zudem vermischt du alle Arten von angaben. Mal hast du % mal px mal gibst du feste Höhen an einmal wieder nicht..du musst dir eine Spur aussuchen und dich daran halten. Umso ungenauer du arbeitest umso größer ist die Warscheinlichkeit, dass die Browser da Probleme machen.
Was jetzt dein Problem anbelangt solltest du dem Objekt "#logo" mal eine feste Höhe von z.b. 40px zuweisen. Dann sieht es schon ziemlich gleich aus.
Denn jetzt orientiert es sich an der Schriftgröße, die wiederum nicht in jedme Browser gleich dargestellt wird. Ist aber wie gesgat nur ein Anhaltspunkt.
Gruß
Phos
Was jetzt dein Problem anbelangt solltest du dem Objekt "#logo" mal eine feste Höhe von z.b. 40px zuweisen. Dann sieht es schon ziemlich gleich aus.
Denn jetzt orientiert es sich an der Schriftgröße, die wiederum nicht in jedme Browser gleich dargestellt wird. Ist aber wie gesgat nur ein Anhaltspunkt.
Gruß
Phos
All rights reserved, all wrongs observed.
···•(_.·´¯)··•¦PhoS¦•··(¯`·._)•···
···•(_.·´¯)··•¦PhoS¦•··(¯`·._)•···
hmm das Blöde ist leider ich weiß nicht wie man die Sache einfacher gestalten könnte!
und wegen den Vermischten % und px Angaben... ich habe versucht mich immer daran gehalten, die Vertikalen mit festen Höhen zu versehen :sprich px und alle horizontalen Längen durch %-Angaben variabel zu halten, sodass die Website auch auf kleineren Bildschirmen mit niedrigeren Auflösungen 800x600 anzeigbar bleibt. Und deswegen auch die selektoren max- bzw. min-width. Aber wie gesagt ich bin immer offen für Neues... Ich wäre dir also dankbar wenn du mir sagen könntest wie man das Stylesheet vereinfachen könnte.
und wegen den Vermischten % und px Angaben... ich habe versucht mich immer daran gehalten, die Vertikalen mit festen Höhen zu versehen :sprich px und alle horizontalen Längen durch %-Angaben variabel zu halten, sodass die Website auch auf kleineren Bildschirmen mit niedrigeren Auflösungen 800x600 anzeigbar bleibt. Und deswegen auch die selektoren max- bzw. min-width. Aber wie gesagt ich bin immer offen für Neues... Ich wäre dir also dankbar wenn du mir sagen könntest wie man das Stylesheet vereinfachen könnte.
mfg Inceptor
mein unfertiges Projekt findet ihr hier: Viewport
mein unfertiges Projekt findet ihr hier: Viewport
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Inceptor« (1. Juni 2011, 08:05)
Zum Thema Größenangaben:
Meine Erfahrung ist, dass man mit prozentualen Werten relativ gut fahren kann (um die Breite, wie Du schon angemerkt hast, variabel zu gestalten). Für weitere Angaben empfehle ich für gewöhnlich em (so z.B. für min-width und max-width). Mit Pixeln arbeite ich maximal bei border, da em gerne ma Rundungsfehler abliefert (0.1em z.B.).
Wenn man das Design allerdings vorher genau durchgeht, stellt man relativ schnell fest, dass man gerade in der Höhe eher selten konkrete Werte braucht (ist auch so bei Deinem Design).
Ansonsten noch nen Tipp für Deine Navigation. Die würde ich zum Beispiel statt mit einer Tabelle mit einer Liste (ul) gestalten.
Lasse mich bei meinen Aussagen auch gerne verbessern (gerade bei Größenangaben gehen ja die Meinungen weit auseinander
).
Gruß, Toast
Edit: Ne weitere Sache. Hast Du vier verschieden Span-Elemente für die Schrift "Mein Platz im Web" verwendet? Wenn ja, wieso. Die Schriftart bleibt ja gleich. Das müsste doch eigtl. auch mit einem zu erledigen sein.
Meine Erfahrung ist, dass man mit prozentualen Werten relativ gut fahren kann (um die Breite, wie Du schon angemerkt hast, variabel zu gestalten). Für weitere Angaben empfehle ich für gewöhnlich em (so z.B. für min-width und max-width). Mit Pixeln arbeite ich maximal bei border, da em gerne ma Rundungsfehler abliefert (0.1em z.B.).
Wenn man das Design allerdings vorher genau durchgeht, stellt man relativ schnell fest, dass man gerade in der Höhe eher selten konkrete Werte braucht (ist auch so bei Deinem Design).
Ansonsten noch nen Tipp für Deine Navigation. Die würde ich zum Beispiel statt mit einer Tabelle mit einer Liste (ul) gestalten.
Lasse mich bei meinen Aussagen auch gerne verbessern (gerade bei Größenangaben gehen ja die Meinungen weit auseinander
).Gruß, Toast
Edit: Ne weitere Sache. Hast Du vier verschieden Span-Elemente für die Schrift "Mein Platz im Web" verwendet? Wenn ja, wieso. Die Schriftart bleibt ja gleich. Das müsste doch eigtl. auch mit einem zu erledigen sein.
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Toast« (1. Juni 2011, 14:40)
ich kann Toast zustimmen, man sollte schon nach Möglichkeit mit % und em-Werten in CSS arbeiten. Für Rahmen nehme ich aber auch Pixel-Angaben. Von Tabellen würde ich wegen der Barrierefreiheit aber abraten, solange es auch anders geht.
Meine Erfahrung ist aber, dass du nach Möglichkeit niemals zu viele Elemente bzw. deren Größe in Pixeln festlegen solltest und den Rest in %. Entweder so gut wie alles in %-Angaben oder so viel wie möglich.
Man kann Pixel-Angaben auch in em umrechnen: http://riddle.pl/emcalc/
Meine Erfahrung ist aber, dass du nach Möglichkeit niemals zu viele Elemente bzw. deren Größe in Pixeln festlegen solltest und den Rest in %. Entweder so gut wie alles in %-Angaben oder so viel wie möglich.
Man kann Pixel-Angaben auch in em umrechnen: http://riddle.pl/emcalc/
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »vivalamusica« (1. Juni 2011, 17:41)
Die Aussage ist so jedoch nicht ganz korrekt. Sonst hätte em nämlich keinen Vorteil gegenüber Pixel. Der Vorteil an em ist, dass sich der Pixelwert, der ein em ist, mit der Änderung der Schriftgröße ändert.
Ist die Schriftgröße 100% (in den meisten Browsern entspricht dies 16px), dann ist ein em auch 16px groß. Erstelle ich nun einen Div-Container, der 10em breit ist, ist dieser 160px breit. Wenn die Schriftgröße, z.B. durch den Nutzer, geändert wird, ändert sich auch der Wert, den 1em annimmt. So kann man gut Bilder anhand der Schriftgröße mitverändern (bei einer Navigation würde die Schrift nicht über das Bild hinaus gehen). Worauf man aber achten muss ist, dass wenn ich in einem Div-Container ne kleiner Schriftgröße habe, auch alle em-Werte innerhalb dieses Containers kleiner sind. Folglich kann etwas "verrutschen" o.ä. Dafür würde sich dann anbieten mit span zu arbeiten, da dadurch, wenn man es wieder schließt, der Rest unberührt bleibt.
Gruß, Toast
Ist die Schriftgröße 100% (in den meisten Browsern entspricht dies 16px), dann ist ein em auch 16px groß. Erstelle ich nun einen Div-Container, der 10em breit ist, ist dieser 160px breit. Wenn die Schriftgröße, z.B. durch den Nutzer, geändert wird, ändert sich auch der Wert, den 1em annimmt. So kann man gut Bilder anhand der Schriftgröße mitverändern (bei einer Navigation würde die Schrift nicht über das Bild hinaus gehen). Worauf man aber achten muss ist, dass wenn ich in einem Div-Container ne kleiner Schriftgröße habe, auch alle em-Werte innerhalb dieses Containers kleiner sind. Folglich kann etwas "verrutschen" o.ä. Dafür würde sich dann anbieten mit span zu arbeiten, da dadurch, wenn man es wieder schließt, der Rest unberührt bleibt.
Gruß, Toast
Danke erst mal für die vielen Anregungen
Ich habe jedes Wort in einen einzelnen span genommen, weil ich für jedes Wort eine eigene hoverfarbe festlegen wollte (siehe in der css-datei)
und wegen der Navigation... anfangs hatte ich die Sache auch ohne Tabelle und nur mit einer weiteren ul aber da hat mich irgendetwas gestört... komm aber jetzt nicht mehr darauf was das war
und was die Größeneinheiten angeht vivalamusica
mein Problem mit em ist einfach ich kann mir das so schlecht als größe vorstellen
mit Pixeln kann ich in der Hinsicht viel mehr anfangen...
was macht denn den gravierenden Unterschied zwischen em und px aus???
Aber ich finde die Ratschläge von euch toll und ich werde versuchen sie umzusetzten... wenn ich soweit mit der Seite fertig bin werde ich das Ergebniss mal im Feedbackforum präsentieren
Zitat
Zitat von Toast:
Edit: Ne weitere Sache. Hast Du vier verschieden Span-Elemente für die Schrift "Mein Platz im Web" verwendet? Wenn ja, wieso. Die Schriftart bleibt ja gleich. Das müsste doch eigtl. auch mit einem zu erledigen sein.
Ich habe jedes Wort in einen einzelnen span genommen, weil ich für jedes Wort eine eigene hoverfarbe festlegen wollte (siehe in der css-datei)
und wegen der Navigation... anfangs hatte ich die Sache auch ohne Tabelle und nur mit einer weiteren ul aber da hat mich irgendetwas gestört... komm aber jetzt nicht mehr darauf was das war
und was die Größeneinheiten angeht vivalamusica
Zitat
Zitat von vivalamusica:
Meine Erfahrung ist aber, dass du nach Möglichkeit niemals zu viele Elemente bzw. deren Größe in Pixeln festlegen solltest und den Rest in %. Entweder so gut wie alles in %-Angaben oder so viel wie möglich.
mein Problem mit em ist einfach ich kann mir das so schlecht als größe vorstellen
mit Pixeln kann ich in der Hinsicht viel mehr anfangen...was macht denn den gravierenden Unterschied zwischen em und px aus???
Aber ich finde die Ratschläge von euch toll und ich werde versuchen sie umzusetzten... wenn ich soweit mit der Seite fertig bin werde ich das Ergebniss mal im Feedbackforum präsentieren
mfg Inceptor
mein unfertiges Projekt findet ihr hier: Viewport
mein unfertiges Projekt findet ihr hier: Viewport
[...]
Zitat
Zitat von Toast:
Edit: Ne weitere Sache. Hast Du vier verschieden Span-Elemente für die Schrift "Mein Platz im Web" verwendet? Wenn ja, wieso. Die Schriftart bleibt ja gleich. Das müsste doch eigtl. auch mit einem zu erledigen sein.
Ich habe jedes Wort in einen einzelnen span genommen, weil ich für jedes Wort eine eigene hoverfarbe festlegen wollte (siehe in der css-datei)
und wegen der Navigation... anfangs hatte ich die Sache auch ohne Tabelle und nur mit einer weiteren ul aber da hat mich irgendetwas gestört... komm aber jetzt nicht mehr darauf was das war![]()
[...]
was macht denn den gravierenden Unterschied zwischen em und px aus???
[...]
Ok. Arbeiten wir uns da mal durch
.Mit der Span-Geschichte: Ok, ich hatte die span-Eigenschaften aus irgend einen Grund nicht gefunden. Wahrscheinlich übersehen, aber so ist das dann ja korrekt (wobei, wenn es nur um die Hover-Farbe geht, wieso dann nicht mit a:hover?).
Was Dich jetzt an einer Liste gestört haben könnte, wundert mich dann doch nen bisschen. Generell sollte man da alles umstellen können (hattest Du evtl. nicht list-style: none gesetzt?).
Zu dem Unterschied zwischen em und px gibts im Internet recht viele Dokumente, auch bei SELFHTML: http://de.selfhtml.org/css/formate/wertz….htm#numerische.
Gut kann man das an folgendem Beispiel erläutern:
Nehmen wir an, Du machst einen Button. Dieser ist 160px breit. Über diesem Button schreibst Du nun einen Link, der den Button maximal ausfüllt. Nun passt alles perfekt. Wenn der Nutzer jetzt die Schriftgröße jedoch verändert, geht der Text, der vorher genau in dem Button gepasst hat, über diesem hinaus. Genau das wäre Dir mit em nicht passiert. Wenn der Button 10em breit ist, ist er bei einer Schriftgröße von 16px 160px breit. Vergrößere ich nun die Schrift, wird auch der Button größer, wodurch der Text nicht mehr über den Button hinausgeht.
Hoffe, ich konnte ein bisschen helfen.
Gruß, Toast
Hast du denn den Tipp aus meinem letzten Post einmal umgesetzt um zu sehen was es bringt?
Hauptproblem ist, das alle Browser mit einem Standard Set an CSS Werten daher kommen. Diese Sets unterscheiden sich voneinander. Deshlab "nullt" man zum Bsp. auch ersteinmal alle Padding/Margins bevor man los legt. DU hast aber Elemente die sich nur an ihrem Inhalt orientieren und sich trotzdem auf die Elemente darunter auswirken. Daher die Verscheibungen. Wenn du aber eine Feste Grße vergibst, umgehst du das Problem der "Browserinterpretationen" und deine Verschiebungen verschwinden.
Was Prozentuale Angaben angeht so muss man da sehr vorsichtig sein..man muss genau wissen wie man sie einsetzt und vorher das gesamte Layout gut durch kalkulieren. Deshlab würde ich das für einen Anfänger ersteinmal nicht empfehlen oder nur in stark vereinfachter Form.
Gruß
Phos
Hauptproblem ist, das alle Browser mit einem Standard Set an CSS Werten daher kommen. Diese Sets unterscheiden sich voneinander. Deshlab "nullt" man zum Bsp. auch ersteinmal alle Padding/Margins bevor man los legt. DU hast aber Elemente die sich nur an ihrem Inhalt orientieren und sich trotzdem auf die Elemente darunter auswirken. Daher die Verscheibungen. Wenn du aber eine Feste Grße vergibst, umgehst du das Problem der "Browserinterpretationen" und deine Verschiebungen verschwinden.
Was Prozentuale Angaben angeht so muss man da sehr vorsichtig sein..man muss genau wissen wie man sie einsetzt und vorher das gesamte Layout gut durch kalkulieren. Deshlab würde ich das für einen Anfänger ersteinmal nicht empfehlen oder nur in stark vereinfachter Form.
Gruß
Phos
All rights reserved, all wrongs observed.
···•(_.·´¯)··•¦PhoS¦•··(¯`·._)•···
···•(_.·´¯)··•¦PhoS¦•··(¯`·._)•···
Zitat
von PhosGEN
Hast du denn den Tipp aus meinem letzten Post einmal umgesetzt um zu sehen was es bringt?
Wegen deinem Tipp... ich werde ihn sobald ich kann umsetzten aber momentan ist die Virtuell Maschine in der ich programmiere nicht mehr zu gänglich keine Ahnung wieso aber bis ich das geregelt habe dauert es wahrscheinlich noch etwas... wenns soweit ist werde ich Bericht erstatten
und @ toast wegen der Schriftgröße... das mit der Größenveränderung des Buttons ist ja ganz toll aber empfiehlt sich die Längenangabe em auch für divs und um höhen oder Breiten festzulegen.
EDIT: @PhosGEN
ich habe das jetzt mal getestet und das Problem besteht immer noch -.- es ist ein Unterschied von genau 1px je nachdem wie ich logo von der höhe her definiere
mfg Inceptor
mein unfertiges Projekt findet ihr hier: Viewport
mein unfertiges Projekt findet ihr hier: Viewport
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Inceptor« (3. Juni 2011, 22:19)
Hmm...bei mir hat es das Problem gelöst..wobei die Differenz bei mir 3-4px betragen hat.
Dein Konstrukt ist mir etwas zu komplex als das ich es auseiander nehmen möchte. Da geht es schneller das Ganze sauber neu aufzusetzen.
Ich kann jetzt nichts versprechen aber ich schau mal ob ich dir den oberen Teil neu basteln kann. Von der Struktur her soll es ja sicherlich so bleiben, nehme ich an.
Gruß
Phos
Dein Konstrukt ist mir etwas zu komplex als das ich es auseiander nehmen möchte. Da geht es schneller das Ganze sauber neu aufzusetzen.
Ich kann jetzt nichts versprechen aber ich schau mal ob ich dir den oberen Teil neu basteln kann. Von der Struktur her soll es ja sicherlich so bleiben, nehme ich an.
Gruß
Phos
All rights reserved, all wrongs observed.
···•(_.·´¯)··•¦PhoS¦•··(¯`·._)•···
···•(_.·´¯)··•¦PhoS¦•··(¯`·._)•···
Das Ganze ist natürlich auch für normale Divs sinnvoll einsetzbar. Die Höhe ist bei mir meist auf auto (liegt daran, dass ich nach unten hin offen programmiere und meist das nächste Element bloss drunter setze). Für die Breitenangaben benutze ich sehr oft %-Werte. Die em-Angabe kommt bei mir in erster Linie bei (kleineren) Grafiken (der Header wird wieder über % und auto-height gelöst) vor.
Eine Angabe von em kann aber auch bei Divs ganz sinnvoll sein. Wenn ich jetzt nen Text in einem Div schreibe, dass sich prozentual ändert, kann der Text mal über 20 Zeilen und mal über 2 Zeilen gehen. Je nachdem. Wenn ich die Größe des Divs per em angebe, bleibt, im Normalfall (von Rundungsfehlern abgesehen), die Anzahl der Zeilen und Worte pro Zeile, auch bei Größenänderung, identisch. Da ich aber diesbezüglich mit %-Werten arbeite (nur min-, und max-width werden per em festgelegt), benutze ich relativ selten em-Werte in Divs (v.a. da man em nicht zuverlässig mit % verbinden kann, da sich der %-Wert mit Browserfenstergröße ändert, der em-Wert jedoch nicht). Wo ich em-Werte jedoch recht häufig nutze ist bei Padding (wobei sich da auch inziwschen die %-Werte durchgesetzt haben... wenn ich das so überlege).
Um die ganzen, eventuell anallenden Probleme zu beseitigen, kann jedoch eine, auch recht grobe, Skizze des späteren Aufbaus vom Vorteil sein.
Nen weitere Vorteil, wenn man nicht Browserfenstergrößenabhängig (also mit %-Werten) arbeitet, kann man durch die em-Werte ein sehr flexibles und stets gleich aussehendes Design entwickeln, das der Nutzer selber vergrößern und verkleinern kann (Durch Buttondruck oder Schriftgrößenveränderung, wobei der Button diese bewirken würde).
Hoffe ich konnte helfen,
Gruß, Toast
Eine Angabe von em kann aber auch bei Divs ganz sinnvoll sein. Wenn ich jetzt nen Text in einem Div schreibe, dass sich prozentual ändert, kann der Text mal über 20 Zeilen und mal über 2 Zeilen gehen. Je nachdem. Wenn ich die Größe des Divs per em angebe, bleibt, im Normalfall (von Rundungsfehlern abgesehen), die Anzahl der Zeilen und Worte pro Zeile, auch bei Größenänderung, identisch. Da ich aber diesbezüglich mit %-Werten arbeite (nur min-, und max-width werden per em festgelegt), benutze ich relativ selten em-Werte in Divs (v.a. da man em nicht zuverlässig mit % verbinden kann, da sich der %-Wert mit Browserfenstergröße ändert, der em-Wert jedoch nicht). Wo ich em-Werte jedoch recht häufig nutze ist bei Padding (wobei sich da auch inziwschen die %-Werte durchgesetzt haben... wenn ich das so überlege).
Um die ganzen, eventuell anallenden Probleme zu beseitigen, kann jedoch eine, auch recht grobe, Skizze des späteren Aufbaus vom Vorteil sein.
Nen weitere Vorteil, wenn man nicht Browserfenstergrößenabhängig (also mit %-Werten) arbeitet, kann man durch die em-Werte ein sehr flexibles und stets gleich aussehendes Design entwickeln, das der Nutzer selber vergrößern und verkleinern kann (Durch Buttondruck oder Schriftgrößenveränderung, wobei der Button diese bewirken würde).
Hoffe ich konnte helfen,
Gruß, Toast
Dank dir Phos für deine Bemühungen
und dir natürlich auch Toast
nochmal @Phos ... am Anfang waren die Verschiebungen, wie bei dir auch so etwa 2-4px groß aber nachdem ich deinen Tipp umgesetzt habe ist der Unterschied wie ich oben schon angesprochen habe auf einen Pixel geschrumpft
und ich teste meine Seite in FF Opera IE Safari und Chrome. aber das hatte ich ja auch schon oben erwähnt.
und @toast ... wenn man die posts von dir so liest denkt man, das em eher nicht so geschickt ist, weil man ja auch % zur verfügung hat ;-) und btw wo kann man eigentlich die Schrift vergrößern?? ich hab mich mal durch sämtliche einstellungen von Opera und dem Ie durchgekämpft und nichts gefunden außer beim IE... aber da haben die Einstellungen nichts an meiner Seite verändert nicht mal die Schriftgröße
und dir natürlich auch Toast
nochmal @Phos ... am Anfang waren die Verschiebungen, wie bei dir auch so etwa 2-4px groß aber nachdem ich deinen Tipp umgesetzt habe ist der Unterschied wie ich oben schon angesprochen habe auf einen Pixel geschrumpft
und ich teste meine Seite in FF Opera IE Safari und Chrome. aber das hatte ich ja auch schon oben erwähnt.
und @toast ... wenn man die posts von dir so liest denkt man, das em eher nicht so geschickt ist, weil man ja auch % zur verfügung hat ;-) und btw wo kann man eigentlich die Schrift vergrößern?? ich hab mich mal durch sämtliche einstellungen von Opera und dem Ie durchgekämpft und nichts gefunden außer beim IE... aber da haben die Einstellungen nichts an meiner Seite verändert nicht mal die Schriftgröße
mfg Inceptor
mein unfertiges Projekt findet ihr hier: Viewport
mein unfertiges Projekt findet ihr hier: Viewport

- 1
- 2

Ähnliche Themen
-
Datenbanken »-
Mysql: AVG() Durchschnitt von Differenzen berechnen ?
(3. Juni 2008, 16:54)
-
(X)HTML & CSS & DHTML & Javascript »-
Tabellen mit CSS positionieren?
(4. Dezember 2004, 22:34)
-
(X)HTML & CSS & DHTML & Javascript »-
tabelle positionieren
(4. Februar 2003, 14:53)
-
PHP »-
Mit CSS positionieren?
(1. Januar 2003, 22:12)
-
(X)HTML & CSS & DHTML & Javascript »-
Probleme beim positionieren eines Bildes mittels JavaScript
(17. Oktober 2002, 08:51)


