Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon tobile81 » 16.11.2010, 20:56

Hallo zusammen,
ich habe ein Problem, dass ich nicht so richtig lösen kann. Und zwar wird auf meiner Seite die Hintergrundfarbe nur im Anfangsbildbereich angezeigt (also das, was man sieht, wenn man auf die Seite kommt). Sobald ich weiter nach unten Scrolle, wird die Hintergrundfarbe nicht mehr angezeigt, was dann ziemlich häßlich aussieht.

Hier der Link zur Seite: http://www.gymnasium-engen.de/index.php?id=51.
Hinweis: Da noch nicht so viel Inhalt da ist, kann es sein, dass ihr die Seite im minimierten Modus anschauen müsst, sodass eine Scrollbar erscheint.

Wisst ihr warum der Hintergrund dort nicht angezeigt wird?
Viele Grüße
Tobi

html Bereich content:
Code: Alles auswählen
   <div id="content">
      <div id="leftcontent"><br><img src="../fileadmin/DESIGN/Tafel.gif" width="200px">
         <div id="keyword">Schule
         </div>
         <div id="submenu">
            <!--###SUBMENU### start-->
            <!--###SUBMENU### stop-->
         </div>
      </div>
      <div id="maincontent">
         <!--###MAINCONTENT### start-->
         <!--###MAINCONTENT### stop-->
      </div>
      <div id="rightcontent">
         <!--###RIGHTCONTENT### start-->
         <!--###RIGHTCONTENT### stop-->
      </div>
   </div>
   <div id="footer">
   </div>


CSS für die div Elemente:
Code: Alles auswählen
div#content{
  position:absolute;
  left:0px;
  right:0px;
  top:115px;
  bottom:63px;
  margin-left:5px;
  margin-right:5px;
  overflow-y:auto;
  font-family:arial;
  font-size:11pt;
  }
div#keyword{
  position: absolute;
  width:170px;
  left:0px;
  top:55px;
  font-weight: bold;
  font-size:20pt;
  text-align: center;
  margin-left:20px;
  }
div#submenu {
  position:absolute;
  left:0px;
  top:150px;
  font-size:10pt;
  font-style:italic;
  font-weight:bold;
  text-align:left;
  }
div#leftcontent {
  position:absolute;
  left:0px;
  top:0px;
  bottom:0px;
  width: 200px;
  background-color: rgb(17,0,125);
  font-size: 10pt;
  padding-left:5px;
  padding-right:5px;
  text-align:justify;
  }
div#maincontent {
  position: absolute;
  left:213px;
  right:217px;
  top:0px;
  bottom:0px;
  background-color: rgb(17,0,125);
  padding-left:10px;
  padding-right:10px;
  padding-top:10px;
  padding-bottom:10px;
  text-align: justify;
  }
div#rightcontent {
  position: absolute;
  right: 0px;
  top: 0px;
  bottom: 0px;
  width: 214px;
  background-color: rgb(17,0,125);
  }
div#footer {
  position: absolute;
  right: 0px;
  left: 0px;
  bottom: 5px;
  height: 55px;
  margin-right: 5px;
  margin-left:5px;
  background-color: rgb(17,0,125);
  }
tobile81
neu hier
 
Beiträge: 4
Registriert: 16.11.2010, 19:18

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon Azra » 17.11.2010, 14:29

Du hast vergessen am Ende des Contents die floats zu clearen.
“HTML is the language for describing the structure of Web pages.”
“CSS is the language for describing the presentation of Web pages, including colors, layout, and fonts.”
Noch weitere Probleme? Kontakt über meine Webseite - simonduda.ch
Benutzeravatar
Azra
Stammuser
 
Beiträge: 422
Registriert: 04.02.2010, 08:36
Wohnort: (Alten)bochum

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon sejuma » 17.11.2010, 20:10

Da ist aber gar kein float!

Tipps:
Bereinige diese Validierungsfehler: http://validator.w3.org/check?verbose=1&uri=http%3A%2F%2Fwww.gymnasium-engen.de%2Findex.php%3Fid%3D51

Verzichte auf sämtliche absolute Positionierungen, weil die absolut unnötig sind.
Verwende dafür ausschließlich float und margin-Angaben.
Bild
sejuma
Vielposter
 
Beiträge: 805
Registriert: 15.07.2009, 17:46

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon tobile81 » 17.11.2010, 20:21

ich habe am Anfang versucht alles über relative Positionierung zu machen, aber irgendwie gabs da immer wieder Haken! Was ist denn so falsch an absoluten Positionierungen?
Greetz
Tobias
tobile81
neu hier
 
Beiträge: 4
Registriert: 16.11.2010, 19:18

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon sejuma » 17.11.2010, 20:56

Absolut positionierte Elemente sind aus dem "Fluss" genommen.
Das kann bei kleinen Bildschirmfenstern dazu führen, dass Inhalte der Seite verloren gehen.
Verschmälere mal deine Seite in der Breite. Dann verschwindet irgendwann das Bild des Schulleiters mit Begleittext komplett und ist für den Besucher mit kleinem Bildschirm nicht sichtbar.
Durch die absolute Positionierung fehlt auch meist (je nach Konstruktion) die Scrollfunktion.
Die Divs überlagern sich dann, weil sie immer absolut zum Elternelement ausgerichtet sind. IdR ist das der body.
Und wenn der zu klein wird, dann passt es halt nicht mehr.
Das gleiche Problem hast du mit relativen Positionierungen.

Beides sollte man nur sehr gezielt anwenden, z.B. wenn sich zwei Elemente bewusst überlagern sollen.
Vielleicht dient das dem besseren Verständnis:
http://www.ohne-css.gehts-gar.net/0045.php

Für dein dreispaltiges Layout orientiere dich vielleicht mal hieran:
http://www.ohne-css.gehts-gar.net/0027.php
Bild
sejuma
Vielposter
 
Beiträge: 805
Registriert: 15.07.2009, 17:46

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon Azra » 18.11.2010, 07:47

Da ist aber gar kein float!

Stimmt, tut mir leid.
Hatte ein <br> zum clearen eingesetzt und dachte es hätte funktioniert :roll:
“HTML is the language for describing the structure of Web pages.”
“CSS is the language for describing the presentation of Web pages, including colors, layout, and fonts.”
Noch weitere Probleme? Kontakt über meine Webseite - simonduda.ch
Benutzeravatar
Azra
Stammuser
 
Beiträge: 422
Registriert: 04.02.2010, 08:36
Wohnort: (Alten)bochum

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon djheke » 18.11.2010, 16:09

Hallo,

Absolute Positionierungen sind schon ok, weil relativ stabiel.

Du kannst dein #maincontent relativ positionieren
Code: Alles auswählen
#maincontent {
position:relative;
left:0;
top:0;
margin:0 205px 0 205px; 
background:#0099dd;
border-left:5px solid #fff;
border-right:5px solid #fff;
}


die Farben und Abstände sind hier anzupassen.

Die äußeren Container können absolut poitioniert bleiben. Nur die Außenabstände sollten weg. Da die Borderangabe in #maincontent diesen Effekt übernimmt.

Dein #content kann auch so bleiben.

Sollten noch Schwierigkeiten auftreten oder ich etwas übersehen habe , dann melde dich einfach per Mail.

Gruß
djheke
Benutzeravatar
djheke
Stammuser
 
Beiträge: 233
Registriert: 15.11.2010, 22:45

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon djheke » 18.11.2010, 16:33

Ach, und noch was.
Bringe dein footer ohne absolute pos. im #content unter, denn nicht jeder Browser versteht bottom 0.
Übrigens im IE 6 ist deine Seite unbrauchbar. Naja es soll ja noch Leute geben die Steinzeit Tools haben.

Gruß
Benutzeravatar
djheke
Stammuser
 
Beiträge: 233
Registriert: 15.11.2010, 22:45

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon djheke » 18.11.2010, 19:01

So, zum Schluss mal eine komplette index.htm zum kopieren.
Code: Alles auswählen
<!DOCTYPE HTML>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<style type="text/css">

/* Breitenangaben müssen noch angepasset werden
   Dein Elterncontainer mit Hintergrundbild fehlt hier. Ist auch völlig unnötig.
   Die überflüssigen HTML Tags sind auch entfernt. Die haben im BODY nichts zu suchen.
*/

  * {
   margin:0;
   padding:0;
   list-style:none;
   border:none;
  }
html {
height:100%;

}
body {
  height:100%;
/* background:url(images/bg_body.jpg) repeat-y 0 0 #ddd; */
}

  #content {
   position:absolute;
   top:135px;
   left:0px;
   right:0;
   /* bottom:100px; #wenn footer unbedingt sichtbar sein soll */
   bottom:0;
   background:#0099dd;
   overflow:auto;
   margin:0 5px;
}


#oben {
height:95px;
margin:0 5px 5px 5px;
background:#0099dd;
}



#topnavi {
position:relative;
top:0px;
left:0;
height:30px;
margin:0 5px;
background:#a33;
}

#maincontent {
position:relative;
left:0;
top:0;
margin:0 200px 0 200px;
background:#0099dd;
border-left:5px solid #fff;
border-right:5px solid #fff;
}

#leftcontent {
  position:absolute;
  top:0px;
  left:0px;
  width:200px;
}


#rightcontent {
  position:absolute;
  top:0;
  right:0;
  width:200px;
}

/* Wenn das footer unbedingt sichtbar sein soll
#footer {
position:absolute;
bottom:0;
left:0;
right:0;
height:95px;
margin:0 5px;
border-top:5px solid #fff;
background:#0099dd;
}
*/

#footer {
height:95px;
border-top:5px solid #fff;
background:#0099dd;
}


p , h1 {
padding:30px 10px; /* zum testen */
}

</style>

</head>

<body>

<div id="oben"> <!-- Neu zur Orientierung -->

   <div id="impressum">
        <a href="http://www.gymnasium-engen.de/index.php?id=51" style="color:#ffffff; text-decoration:none;">Home</a> &#124;
        <a href="http://www.gymnasium-engen.de/index.php?id=73" style="color:#ffffff; text-decoration:none;">Kontakt</a> &#124;
        <a href="http://www.gymnasium-engen.de/index.php?id=72" style="color:#ffffff; text-decoration:none;">Impressum</a>
   </div>

   <div id="blockli"><img src="../fileadmin/DESIGN/blockli.jpg" alt="" /></div>
      <div id="blockre"><img src="../fileadmin/DESIGN/blockre.jpg" alt="" /></div>

</div> <!-- Ende oben -->

<div id="topnavi"> <!-- Neu zur Orientierung -->

     <div id="menubar">
   <div id="mainmenu">
    <div class="boxmenu">
        <div class="body mainmenu">
         <a href="index.php?id=52" onfocus="blurLink(this);" onmouseover="over('img52_67e5_0');" onmouseout="out('img52_67e5_0');"><img src="typo3temp/menu/f0ecd825a2.gif" width="78" height="25" border="0" alt="News" name="img52_67e5_0" /></a>
         <a href="index.php?id=56" onfocus="blurLink(this);" onmouseover="over('img56_67e5_1');" onmouseout="out('img56_67e5_1');"><img src="typo3temp/menu/6ff179f28e.gif" width="91" height="25" border="0" alt="Schule" name="img56_67e5_1" /></a>
         <a href="index.php?id=55" onfocus="blurLink(this);" onmouseover="over('img55_67e5_2');" onmouseout="out('img55_67e5_2');"><img src="typo3temp/menu/f598937825.gif" width="98" height="25" border="0" alt="Schüler" name="img55_67e5_2" /></a>
         <a href="index.php?id=71" onfocus="blurLink(this);" onmouseover="over('img71_67e5_3');" onmouseout="out('img71_67e5_3');"><img src="typo3temp/menu/2cc4f2d93f.gif" width="82" height="25" border="0" alt="Eltern" name="img71_67e5_3" /></a>
         <a href="index.php?id=57" onfocus="blurLink(this);" onmouseover="over('img57_67e5_4');" onmouseout="out('img57_67e5_4');"><img src="typo3temp/menu/2b2b136e26.gif" width="95" height="25" border="0" alt="Partner" name="img57_67e5_4" /></a>
         <a href="index.php?id=54" onfocus="blurLink(this);" onmouseover="over('img54_67e5_5');" onmouseout="out('img54_67e5_5');"><img src="typo3temp/menu/ab7ab10c9c.gif" width="122" height="25" border="0" alt="Betreuung" name="img54_67e5_5" /></a>
         <a href="index.php?id=53" onfocus="blurLink(this);" onmouseover="over('img53_67e5_6');" onmouseout="out('img53_67e5_6');"><img src="typo3temp/menu/68b0340abe.gif" width="78" height="25" border="0" alt="Links" name="img53_67e5_6" /></a>
        </div>
       </div>
      </div>
     </div>

</div> <!-- Ende Topnavi-->



<div id="content">
    <div id="leftcontent"><br /><img src="../fileadmin/DESIGN/Tafel.gif" width="200px" alt="" />
       <div id="keyword">Schule
          </div>
      <div id="submenu">
       <div class="boxmenu">
           <div class="body mainmenu">
             <a href="index.php?id=61" onfocus="blurLink(this);" onmouseover="over('img61_7615_0');" onmouseout="out('img61_7615_0');"><img src="typo3temp/menu/0f67edabb6.gif" width="210" height="25" border="0" alt="Schulleitung" name="img61_7615_0" /></a>
             <a href="index.php?id=60" onfocus="blurLink(this);" onmouseover="over('img60_7615_1');" onmouseout="out('img60_7615_1');"><img src="typo3temp/menu/8b8823ddcf.gif" width="210" height="25" border="0" alt="Kollegium" name="img60_7615_1" /></a>
             <a href="index.php?id=59" onfocus="blurLink(this);" onmouseover="over('img59_7615_2');" onmouseout="out('img59_7615_2');"><img src="typo3temp/menu/a1779f0814.gif" width="210" height="25" border="0" alt="Profile" name="img59_7615_2" /></a>
             <a href="index.php?id=58" onfocus="blurLink(this);" onmouseover="over('img58_7615_3');" onmouseout="out('img58_7615_3');"><img src="typo3temp/menu/442e60b1bc.gif" width="210" height="25" border="0" alt="Fächer" name="img58_7615_3" /></a>
             <a href="index.php?id=74" onfocus="blurLink(this);" onmouseover="over('img74_7615_4');" onmouseout="out('img74_7615_4');"><img src="typo3temp/menu/ff604aaae3.gif" width="210" height="25" border="0" alt="Mediothek" name="img74_7615_4" /></a>
             <a href="index.php?id=75" onfocus="blurLink(this);" onmouseover="over('img75_7615_5');" onmouseout="out('img75_7615_5');"><img src="typo3temp/menu/e0175ec678.gif" width="210" height="25" border="0" alt="Mensa" name="img75_7615_5" /></a>
           </div>
          </div>
      </div>
     </div>

     <div id="maincontent">
   <a id="c152"></a>
       <p class="linie" style="border-bottom: 2px solid; width=100%; font-size: 14pt; font-weight:bold;">
        Grußwort des Schulleiters
       </p>
          <img src="fileadmin/CONTENT/SCHULE/Kollegium/schulleiter.jpg" width="150px" alt="Thomas Umbscheiden, StD (Schulleiter)" style="float: left; margin-right:15px; margin-top:0px; margin-bottom:15px;" border="2" />
       <p>
        Liebe Besucherin, lieber Besucher,</p><p>herzlich willkommen auf der Homepage des Gymnasiums Engen.
       </p>
       <p>
        Wir freuen uns, dass Sie sich für unsere Schule interessieren und hoffen, dass Sie auf der Homepage die von Ihnen gewünschten Informationen und vielleicht auch ein paar Anregungen mehr finden.
       </p>
       <p>
        Mein Dank gilt dem Schülerteam unter der Leitung von Herrn Studienrat Haas, das unsere Homepage entwickelt hat und ständig pflegt. Wir wollen Sie möglichst aktuell wie umfassend mit Besonderheiten unserer Schule vertraut machen. Fragen beantworten wir gern, für Anregungen sind wir dankbar, an Kontakten stets interessiert.
       </p>
       <p>
        Ich wünsche Ihnen eine erfolgreiche Begegnung mit unserer Schule. Soweit Sie persönlich mit der Schulleitung Kontakt aufnehmen wollen oder die Schule besuchen möchten, sind Sie herzlich eingeladen.<br />Mit freundlichen Grüßen
       </p>
        Thomas Umbscheiden, Studiendirektor <br />Schulleiter des Gymnasiums Engen
    </div>
   
    <div id="rightcontent">
   Schulportal
    </div>

<div id="footer">
    Footer
      </div>

</div>

   <!--<div id="footer">
    Footer
      </div>-->


</body>
</html>


Damit solltest du klar kommen.
Noch was, verwende nicht soviele DIV's.

Gruß
djheke
Benutzeravatar
djheke
Stammuser
 
Beiträge: 233
Registriert: 15.11.2010, 22:45

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon sejuma » 19.11.2010, 07:25

@djheke:
Dieser Doctype führt zum Quirksmode meim IE und er kann das CSS-Boxmodell nicht korrekt darstellen .

Die absoluten Positionierungen sind mir nach wie vor unerklärlich, da unnötig.
Bild
sejuma
Vielposter
 
Beiträge: 805
Registriert: 15.07.2009, 17:46

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon Azra » 19.11.2010, 07:46

Dieser Doctype führt zum Quirksmode

Das ist HTML 5 :P
“HTML is the language for describing the structure of Web pages.”
“CSS is the language for describing the presentation of Web pages, including colors, layout, and fonts.”
Noch weitere Probleme? Kontakt über meine Webseite - simonduda.ch
Benutzeravatar
Azra
Stammuser
 
Beiträge: 422
Registriert: 04.02.2010, 08:36
Wohnort: (Alten)bochum

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon sejuma » 19.11.2010, 13:12

Azra hat geschrieben:Das ist HTML 5 :P


Wieder was gelernt.
Damit wäre ja dann wohl das Thema Quirks- und Standardmode ab IE 6 auf recht einfache Weise gelöst?
Bild
sejuma
Vielposter
 
Beiträge: 805
Registriert: 15.07.2009, 17:46

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon djheke » 19.11.2010, 14:24

Guten Tag,
Zwei Bilder ohne Kommentar.
Dateianhänge
ohne doctylehtml5.jpg
Darstellung im IE 6 ohne Doctype (Quirks-Modus)
ohne doctylehtml5.jpg (7.2 KiB) 354-mal betrachtet
mit doctylehtml5.jpg
Darstellung im IE 6 mit <!DOCTYPE HTML>
mit doctylehtml5.jpg (7.87 KiB) 352-mal betrachtet
Benutzeravatar
djheke
Stammuser
 
Beiträge: 233
Registriert: 15.11.2010, 22:45

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon Azra » 19.11.2010, 14:31

Du hast <html> nicht aufgemacht, ich dachte du kommst vielleicht drauf :wink:
Der <title>-Tag gehört ebenfalls zum Grundgerüst.

Frohes schaffen.
“HTML is the language for describing the structure of Web pages.”
“CSS is the language for describing the presentation of Web pages, including colors, layout, and fonts.”
Noch weitere Probleme? Kontakt über meine Webseite - simonduda.ch
Benutzeravatar
Azra
Stammuser
 
Beiträge: 422
Registriert: 04.02.2010, 08:36
Wohnort: (Alten)bochum

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon djheke » 19.11.2010, 14:54

Danke, hab ich wohl in der Eile vergessen. Ich gelobe Besserung.
Benutzeravatar
djheke
Stammuser
 
Beiträge: 233
Registriert: 15.11.2010, 22:45

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon tobile81 » 19.11.2010, 23:17

Also ich arbeite mit Typo 3, darum kann ich das nicht 1 zu 1 übernehmen, was ihr mir als Tipps gegeben habt (meines Wissens zumindest).
@ djheke: So, zum Schluss mal eine komplette index.htm zum kopieren.

Ich hab nun mal die absoluten Positionierungen rausgenommen, und wenn ich den RightContent im Html vor den MainContent setze zeigts mir den auch schön an. Dummerweise fehlt mir nun die Hintergrundfarbe im Blocklinks und rechts, wenn man nach unten scrollt, da die Hintergrundfarbe nur den echten Inhalt füllt.

FRAGE: Wie schaffe ich es, dass die Hintergrundfarbe eine einheitliche Länge in allen Boxen bekommt? http://www.gymnasium-engen.de/index.php?id=51

Viele Grüße
Tobias
tobile81
neu hier
 
Beiträge: 4
Registriert: 16.11.2010, 19:18

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon djheke » 20.11.2010, 09:53

Hallo,
habe dir schon eine Mail ,mit den Änderungen am CSS , zukommen lassen. Damit sollte es gehen. Zumindesten mit der linken und rechten Box. Vorausgesetzt deine mittlere Box (Inhalt) ist immer die längste Spalte. Aber davon kann man ja ausgehen.

mfg
djheke
Benutzeravatar
djheke
Stammuser
 
Beiträge: 233
Registriert: 15.11.2010, 22:45

Re: Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig

Beitragvon tobile81 » 20.11.2010, 16:39

yes it works!!!
Thanxx

Greetz
Tobias
tobile81
neu hier
 
Beiträge: 4
Registriert: 16.11.2010, 19:18


Moderatoren: Laus, Moderatoren

Ähnliche Beiträge zu "Hintergrundfarbe wird im Overflowbereich nicht mehr angezeig"

Zurück zu: CSS für Anfänger

Wer ist online?

Mitglieder in diesem Forum: Google [Bot] und 3 Gäste

cron