Zum Inhalt springen

Horizontales Menü Hover Problem auf LI-Element

Erstellt am 25. September 2009 · 15 Antworten · letzte Antwort am 11. Oktober 2009

Tags: HTML & CSS, Frage

Marijoman ·

Hallo !!

Bin schon fast am Rad drehen, weiss nicht mehr was ich machen soll. Habe alles mögliche schon versucht mit dem File whatever:hover und sonst nocht andere kleine Tricks.
Aber ich kriege meine Hintergrundfrabe einfach nicht auf das Li-Element. Ich weiss dass der IE 6 das Hover nicht kennt, aber ich dachte dass ich wenigstens eine Lösung finde. Wer kann mir bei dieser kniffligen Aufgabe helfen.

Hier meine HTML Links im Template :

    <td width="904" colspan="3" class="navigation_column"><div id="mainnavcontainer">
      <ul>
        <!-- ###HAUPT_NAVI###  start-->
        <li><a href="#">Home</a></li>
        <li><a href="#">Über uns</a></li>
        <li><a href="#">Editorial</a></li>
        <li><a href="#">Agenda</a></li>
        <li><a href="#">Fotogalerie</a></li>
        <li><a href="#">Links</a></li>
        <!-- ###HAUPT_NAVI###  stop-->
      </ul>
    </div></td>

Dann hier mein Menü mit Typo3 :

temp.HAUPTNAVIGATION  = HMENU 
temp.HAUPTNAVIGATION {

  wrap = <div class="menu1"> | </div>

  # Hauptmenue
  1 = TMENU
  1 {
    wrap = <ul> | </ul>
    expAll = 1
    NO.ATagTitle.field = subtitle//title
    NO.wrapItemAndSub = <li> | </li>
    NO.stdWrap.prepend = COA
    NO.stdWrap.prepend.10.wrap = ~  |
    IFSUB = 1
    IFSUB {
      wrapItemAndSub = <li> | </li>
      allWrap = | <!--<![endif]-->
      linkWrap = |<!--[if IE 7]><!-->
      ATagBeforeWrap = 1
    }
    ACT < .NO
    ACT = 1
    ACT.ATagParams = class=dropact
    ACTIFSUB < .IFSUB
    ACTIFSUB.ATagParams = class=dropact
  }
  2 = TMENU
  2 {
    wrap = <!--[if lte IE 6]><table><tr><td><![endif]--><ul> | </ul><!--[if lte IE 6]></td></tr></table></a><![endif]-->
    expAll = 1
    NO.ATagTitle.field = subtitle//title
    NO.wrapItemAndSub = <li> | </li>
    IFSUB = 1
    IFSUB {
      wrapItemAndSub = <li> | </li>
      allWrap = | <!--<![endif]-->
      linkWrap = |<!--[if IE 7]><!-->
      ATagBeforeWrap = 1
      ATagParams = class=drop
    }
  }

  3 < .2

  4 < .2

}

Und zu guterletzt mein CSS :

.menu1 {
width:904px; 
font-size:0.85em;
position:relative;
z-index:100;
}
/* remove all the bullets, borders and padding from the default list styling */
.menu1 ul {
padding:0;
margin:0;
height:40px;
background:#fdc300;
}
.menu1 ul ul {
height:40px; 
line-height:40px;
width:150px;
}
/* float the list to make it horizontal and a relative positon so that you can control the dropdown menu positon */
.menu1 li {
float:left;
width:150px;
position:relative;
text-align:center;
line-height:40px;
}
/* style the links for the top level */
.menu1 a, .menu1 a:visited {
display:inline;
font-size:14px;
text-decoration:none; 
color:#FFFFFF; 
width:150px; 
height:40px; 
border:0px solid #fdc300; 
border-width:0px; 
background:#fdc300; 
line-height:40px;
}
/* a hack so that IE5.5 faulty box model is corrected */
* html .menu1 a, * html .menu1 a:visited {
width:150px;
w\idth:149px;
}
.menu1 ul li  {
width:150px;
height:40px;
line-height:40px;
background:#fdc300;
}
.menu1 li:hover {
background:#FF9900;
}
.menu1 li a:hover {
background:#FF9900;
width:150px;
height:40px;
line-height:40px;
}

/* style the second level background */
.menu1 ul ul a.drop, .menu1 ul ul a.drop:visited {
background:#000;
}
/* style the second level hover */
.menu1 ul ul a.drop:hover{
background:#FF9900;
}
.menu1 ul ul :hover > a.drop {
background:#000;
}
/* style the third level background */
.menu1 ul ul ul a, .menu1 ul ul ul a:visited {
background:#fdc300;
}
/* style the third level hover */
.menu1 ul ul ul a:hover {
background:#FF9900;
}


/* hide the sub levels and give them a positon absolute so that they take up no room */
.menu1 ul ul {
visibility:hidden;
position:absolute;
height:40px;
top:40px;
left:0; 
width:150px;
}
/* another hack for IE5.5 */
* html .menu1 ul ul {
top:39px;
t\op:40px;
}

/* position the third level flyout menu */
.menu1 ul ul ul{
left:150px; 
top:0;
width:150px;
}
/* position the third level flyout menu for a left flyout */
.menu1 ul ul ul.left {
left:-150px;
}

/* style the table so that it takes no ppart in the layout - required for IE to work */
.menu1 table {position:absolute; top:0; left:0;}

/* style the second level links */
.menu1 ul ul a, .menu1 ul ul a:visited {
background:#fdc300; 
color:#FFFFFF; 
height:40px; 
line-height:40px; 
padding:5px 10px; 
width:149px
/* yet another hack for IE5.5 */
}
* html .menu1 ul ul a{
width:150px;
w\idth:149px;
}


/* style the top level hover */
.menu1 a:hover, .menu1 ul ul a:hover{
color:#FFFFFF; 
background:#FF9900;
}
.menu1 :hover > a, .menu1 ul ul :hover > a {
color:#ffffff;
background:#FF9900;
}

/* make the second level visible when hover on first level list OR link */
.menu1 ul li:hover ul,
.menu1 ul a:hover ul{
visibility:visible;

}
/* keep the third level hidden when you hover on first level list OR link */
.menu1 ul :hover ul ul{
visibility:hidden;
}

/* make the third level visible when you hover over second level list OR link */
.menu1 ul :hover ul :hover ul{ 
visibility:visible;
}

Bin für jede Hilfe dankbar !! Bin selber auch noch auf der Suche nach der Lösung, aber vielleicht kennt jemand eine gute Lösung.
Grüsse Marijo

SLAng ·

Sorry, dein Problem ist nicht nachvollziehbar.

Ich weiß auch gar nicht was du willst. Eine wechselnde Hintergrundfarbe beim überfahren mit der Mouse?

In deinem HTML Code finden sich 2 möglich Elternelemente:

class="navigation_column"
id="mainnavcontainer"

Darauf kann sich das ul und li beziehen. In deinem TS findet man genau gar keine Classen oder id's mehr. Der Code passt also nicht zusammen. Einzig Classes in a-Tags sind hier vorhanden.

in deinem CSS wiederum basiert alles auf der Class menu1. Außerdem findet sich noch eine expliziete ul-Class left, die aber weder in deinem HTML noch in deinem CSS zu finden ist. Es passt also nichts zusammen.

Das der IE6 kein Hover kann ist mir neu. Klar sollte auch sein, dass wenn der IE6 bei li:hover Probleme macht, du einfach genau so gut dem a-Tag das Hover mitgeben kannst.

Bitte beim nächsten Mal in der korrekten Kategorie posten. Hier scheint es eher um ein Missverständnis im Bereich HTML/CSS als im Bereich TS/Menüs zu geben.

Marijoman ·

Hallo !!

Also sorry, bin eben Anfänger im Bereich Typo3. Wenn ich eine HTML Seite erstellen würde hätte ich es mit CSS oder Javascript gelöst, wohl eher erstes.
Ich habe nur das CSS angepasst, damit es auf allen Browser gleich aussieht. Das Typoscript habe ich hier aus dem Forum. Nun ja ich will das die Hintergrundfarbe ändert beim darüberfahren, aber nicht nur auf dem <a> Tag sondern auf dem <li> Tag ?

Am besten gebe ich mal den Link, dann sieht man auch wie es sein sollte, also auf allen Browsern, ausser IE 6 ist nun so !!

http://www.4yourdesign.com/typo3/index.php?id=2

Jetzt stehe ich an !! Denke schon dass ich hilfe brauche, sonst hätt ich nicht geschrieben. Aber trotzdem danke für deine Hinweise.

Grüsse Marijo

P.S.: Ach ja nur noch zur class, darauf befindet sich die Hintergrundfarbe der Spalte, die musste ich in einer Tabelle machen, da ich sonst keine Lösung gefunden habe. Normalerweise habe ich dies mit div's gemacht. Aber da ich zwei verschiedene Spaltenlayouts habe, war dies nicht so lösbar. Die eine Spalte war immer länger als die andere.

erzengel ·
Marijoman schrieb

P.S.: Ach ja nur noch zur class, darauf befindet sich die Hintergrundfarbe der Spalte, die musste ich in einer Tabelle machen, da ich sonst keine Lösung gefunden habe. Normalerweise habe ich dies mit div's gemacht. Aber da ich zwei verschiedene Spaltenlayouts habe, war dies nicht so lösbar. Die eine Spalte war immer länger als die andere.

Sorry dein CSS Code ist sehr unübersichtlich, zudem fehlerhaft, habe es aber nur kurz überflogen.

Wenn du nicht weisst wie du das mit 2 Spalten machst dann heisst das Zauberwort faux columns oder Liquid columns (DIVs)... was ich aber nicht empfehlen würde, da es auch bei älteren Browsern Probleme geben kann... eher über verschachtelte Divs, sprich ein Container, Inhalt + Links oder Rechts, mit fester Größe. Footer und Header kann man auch aufnehmen, wenn man es braucht.

Ich finde das ist ein gute geschriebnes Template:
http://intensivstation.ch/files/templates/2/template-1.html

wobei ich sowas nicht nutze:
height:expression(this.scrollHeight > 600 ? "auto":"600px"); }

da nutze ich min-height und height.

Nutze keine Tabellen zum Positionieren, das mögen Suchmaschienen garnicht.

MFG Michael

Marijoman ·

Hallo erzengel !!

Schau an, schau an, bin eben wenn ich mit HTML unterwegs bin auf ca. gleichen Pfaden, ausser mit Expressions, da hast du recht. Aber genau da besteht mein Problem.
Ach so zuerst mal dank für kostruktive Kritik und gleich noch Beispiele mit Tipps anbei, so lässt sichs gut vorankommen.
Eben habe zuerst mal 3 Spaltenlayout und wenn ich auf der anderen Seite das Beispiel anguck, dann ist eben auch so dass nur Navi mit Content auf einer Höhe sind, würdest du die 3 Spalte auch mit in den DIV packen wo der CONTENT die Höhe bestimmt ?
Und andere Frage wie löst du das mit der Höhe ?
Auch einfach eine min.Höhe und dann noch die Höhe per auto ?

Es gibt da viele gute und schlechte Lösungen, bin immer wieder gespannt, wie das andere lösen.
Dank dir für alles und die guten Tipps.

Gruss Marijo

P.S.: Das Menü konnte ich doch mit Hover:whatever lösen.

erzengel ·

Hallo,

ich mache es so, dass alles in den Container/Content kommt. Hängt aber auch davon ab wie man das ganze haben möchte.

Ich mache im Moment Layouts für Auflösungen von 1280x1024, weil das Faux und Liquid Column etwas problematisch ist und grade bei noch höheren Auflösungen zu Problemen führen kann... also fixe Größe.

Mit min-height und height auto, sollte das recht unkompliziert klappen.

Also mir kommt es darauf an, dass der Quellcode übersichtlich ist und es so aussieht wie es aussehen soll 😉.

MFG Michael

Marijoman ·

Hallo erzengel

Dank dir tausend mal für die Infos. Somit bin ich nicht auf dem Holzweg gewesen. Habe eben ein anderes CSS entworfen, was ich dann verworfen habe, und dieses zusammengebastelt habe.
Bin eben noch Anfänger auf Typo3 Bereich, und muss immer wieder merken, dass ich an meine Grenzen komme.
Aber wer suchet, der findet, heisst es doch so schön.

Dank dir und auf ander mal.

Gruss Marijo

Marijoman ·

Hallo erzengel !!

Also ich habe das ganze nochmal überarbeitet und nun eben so Probleme bei der Ausgabe der Seite, denn ich habe 2 verschiedene HTML Templates auf der Seite ein 3 spaltiges und ein 2 spaltiges Layout.
Was aber dafür besser geworden ist, der Seminar Manager der die übertragenen Aufgaben vorher nicht ausgegeben hat, gibt jetzt die Daten richtig aus, also lag es an einem nicht validen Code im Hintergrund.
Meine Frage nun kann du mir einen Tipp geben wie ich meine Seite gut in ein 2 und 3 spaltiges Layout aufteilen kann. Im Moment mache ich dies mit einer Global Anweisung auf das 2. Template und TS Config Eingabe auf den gewünschten Seiten bzw. im ROOT.

Hier der neue HTML & CSS Code der Seite, das Menü ist gleich geblieben.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="de" xml:lang="de">
<head>
  <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
  <title>KONTAKT Template</title>
  
  <link href="screen2col.css" rel="stylesheet" type="text/css" media="screen" /> 
  <link href="print2col.css" rel="stylesheet" type="text/css" media="print" />   
  
</head>
<!-- ###DOCUMENT_BODY###  start-->
<body id="startseite">
<div id="wrapper">
<div id="header">
<div class="skiplink"><a href="#textbereich">Zum Inhalt springen</a></div>
<img src="fileadmin/templates/images/logo.png" alt="Logo KONTAKT Hünenberg" width="904" height="235" id="logo" /></div>
    <div id="mainnav">
      <ul>
        <!-- ###HAUPT_NAVI###  start-->
        <li><a href="#" >Home</a></li>
        <li><a href="#">&Uuml;ber uns</a></li>
        <li><a href="#">Editorial</a></li>
        <li><a href="#">Agenda</a></li>
        <li><a href="#">Fotogalerie</a></li>
        <li><a href="#">Links</a></li>
        <!-- ###HAUPT_NAVI###  stop-->
      </ul>
    </div>
	<div id="zusatznav">
      <ul>
        <!-- ###ZUSATZ_NAVI###  start-->
        <li><a href="#">Erwachsenenbildung</a></li>
        <li><a href="#">Kinder und Eltern </a></li>
        <li><a href="#">Senioren</a></li>
        <li><a href="#">Begegnungen</a></li>
        <li><a href="#">Spielgruppe</a></li>
        <li><a href="#">Musik f&uuml;r Kinder</a></li>
        <li><a href="#">Mitgliederbereich</a></li>
        <!-- ###ZUSATZ_NAVI### stop-->
      </ul>
    </div>
   <div id="content" >
<!-- ###INHALT_MITTE###  start-->
  <h1>KONTAKT H&uuml;nenberg</h1>
  <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent pulvinar,   eros non varius scelerisque, nunc lectus tristique pede, sit amet placerat   ligula mauris vel urna. Vestibulum sed lectus euismod nisi <a href="#">mollis</a> accumsan. Nunc   malesuada adipiscing lorem. . Vestibulum quam lacus, iaculis   et, interdum at, ornare vel, pede. Morbi pretium consequat lacus. Mauris vel   ipsum quis elit dapibus bibendum. Aenean non magna. Suspendisse placerat, dolor   quis rutrum lobortis, metus ligula lobortis neque, nec rhoncus augue dui eget   ante. Sed eleifend. Sed vel est vel nisl aliquet elementum. Fusce dui. Duis vel   odio a nisi lacinia lobortis.</p>
  <p><img src="#" alt="#" width="78" height="100" title="#" class="bildlinks" /></p>
  <p>Quisque consequat ipsum in pede. Aliquam consectetuer venenatis erat. Class   aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos   hymenaeos. Integer tincidunt rhoncus ante. Nunc vehicula lobortis orci. Nam vel   diam eget odio laoreet vulputate. Mauris id mi et enim placerat mollis. Ut   sagittis purus a turpis. In facilisis, urna id consequat lacinia, felis dolor   accumsan libero, et consequat erat felis sed libero. Pellentesque blandit, pede   sed dignissim rutrum, nisl mi fermentum neque, vel tempus nibh velit eu velit.   Donec dui. Etiam eleifend ligula non quam. Cras vel mi eu nulla aliquet semper.   Vivamus vitae sapien. Donec dui. Etiam eleifend ligula non quam. <img src="#" alt="#" width="78" height="100" title="#" class="bildrechts" /></p>
  <p>Quisque consequat ipsum in pede. Aliquam consectetuer venenatis erat. Class   aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos   hymenaeos. Integer tincidunt rhoncus ante. Nunc vehicula lobortis orci. Nam vel   diam eget odio laoreet vulputate. Mauris id mi et enim placerat mollis. Ut   sagittis purus a turpis. In facilisis, urna id consequat lacinia, felis dolor   accumsan libero, et consequat erat felis sed libero. Pellentesque blandit, pede   sed dignissim rutrum, nisl mi fermentum neque, vel tempus nibh velit eu velit.   Donec dui. Etiam eleifend ligula non quam.</p>
  <p>Quisque consequat ipsum in pede. Aliquam consectetuer venenatis erat. Class   aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos   hymenaeos. Integer tincidunt rhoncus ante.</p>
   </div>
<!-- ###INHALT_MITTE###  stop-->
<div id="footer">
  <div >
  &copy; Copyritght  by KONTAKT H&uuml;nenberg / Created by <a href="mailto:support@4yourdesign.com">4 your Design</a>
  </div>
</div>  
</div> 
<!-- ###DOCUMENT_BODY###  stop-->
</body>
</html>

Und noch das CSS :

/*======================================================
=            Stylesheet KONTAKT Hünenberg              =
=            This copyright notice must be             =
=              untouched at all times.                 =
=*******************************************************
=        CSS Document created by 4 your Design         =
=               Autor: Kolenda Marijo                  = 
=           E-Mail : support@4yourdesign.com           =
====================================================== */

/* ==============================
   1. Kalibrierung
=============================== */

* { padding: 0; margin: 0; } 
 
h1, h2, h3, p, ul, ol { margin-bottom: 1em; } 
h2, h3 { margin-top: 1em; }

ol ul { margin-bottom: 0; } 

li { margin-left: 2em; }    
   
/* =============================
   2. Allgemeine Styles 
=============================== */   

html { height: 101%; }    
   
body { 
  background-color: #ebebeb; 
  color: #000; 
  font-family: Arial, Verdana, sans-serif;
  font-size: 14px;
  padding:0px;
  margin:0px;
  /* This path has to be correct! If nothing hovers in IE,
  this is probably not found */
  behavior:url("fileadmin/templates/horizontal/csshover.htc");   
}

h1 { font-size: 150%; }

h2 { font-size: 125%; }

h3 { font-size: 100%; }

/* ================
   Hyperlinks    
==================*/  

a {color: #3333FF;}
a:hover {
color: #FF9900;
text-decoration:underline;}  

/* ===================
   Klassen und IDs    
=====================*/

.skiplink {
  position: absolute; 
  top: -5000px; 
  left: -5000px; 
  width: 0;
  height: 0; 
  overflow: hidden; 
  display: inline; 
}

.bildlinks {
  float: left; 
  padding: 3px; 
  border: 5px solid #fff; 
  margin-right: 10px; 
  margin-bottom: 10px; 
}
.bildrechts {
  float: right; 
  padding: 3px; 
  border: 5px solid #fff;
  margin-bottom: 10px; 
  margin-left: 10px; 
}
.clearing {
  clear: both; 
}
 
#logo {
  background-color: #ebebeb; 
  color: black; 
  padding: 0px; 
  border: 0px solid #ebebeb; 
}

/* ==============================
   3. Styles für Layoutbereiche 
=============================== */   

#wrapper { 
  background: #C5D9F1; 
  color: black; 
  width: 904px; 
  margin: 10px auto;
  min-height: 450px; 
}

#header { 
  position: relative; 
  background-color: #ebebeb; 
  color: black; 
  padding: 0px;
  padding-bottom: 130px;
}
    
#right {
  float: right; 
  width: 144px; 
  padding: 0px;
  text-align: justify;
  font-size: 10px; 
}
  #right h3 { 
  text-align: center;
  font-weight: bold;
  }
  
#content {
  background-color: #ebebeb; 
  padding: 20px 20px 20px 20px; 
  margin-right: 144px; 
  margin-left: 230px;
  text-align:justify; 
}
	#content h1 { text-align: center; }
	
    #content a {
      color: #3333FF; 
    }
    #content ul li { 
      list-style-type: none; 
    }
    #content a:hover,
    #content a:focus {
      color: #FF9900;
	  text-decoration: underline; 
    }

#footer {
  clear: both; 
  background-color: #ebebeb; 
  padding: 10px 0px 0px 0px; 
  border-top: 1px solid #ebebeb;
  text-align: center; 
}

/* ==============================
   4. Navigationen 
=============================== */ 

	#mainnav {
	 width: 904px;
	 padding: 0px;
	 margin: 0px;
	 position:absolute;
	 left:50px;
	 top:280px;
	 z-index:3;
	}
	#mainnav ul {
	 padding: 0px;
	 margin: 0px;
	 list-style-type: none;
	}
	#mainnav li {
	 padding: 0px;
	 margin: 0px;
	 display: inline;
	}
	#mainnav a {
	 color: #FFFFFF;
	 text-decoration: none;
	 font-size:20px;
	}

	#zusatznav {
	 width:230px;
	 float:left; 
	 position:relativ; 
	 valign:top; 
	}
	#zusatznav {
	 position:relative;
	 z-index:2;
	}
	#zusatznav ul {
	 padding: 0px;
	 margin: 0px;
	}
	#zusatznav li {
	 padding: 0px;
	 margin: 0px;
	}
	#zusatznav a {
	 color: #FFFFFF;
	 text-decoration: none;
	 font-size:20px;
	 padding: 0px;
	 margin: 0px;
	}
  
/* ==============================
   5. Sonstige Styles 
=============================== */   

/* =====================
   Das Kontaktformular
===================== */
   
form {
  background-color: #eeeeee; 
  color: black; 
  width: 370px; 
  padding: 20px; 
  border: 1px solid #8c8c8c; 
}       
label {
  display: block; 
  cursor: pointer; 
}
input#absender, textarea {
  width: 300px;
  border: 1px solid #8c8c8c; 
  margin-bottom: 1em;
}
textarea { height: 7em; }

input#absender:focus, 
textarea:focus {
  background-color: #d9d9d9; 
  color: black; 
}

/* ===============
   Die Galerie 
=================*/

/* Hack für IE6 */
* html div.galerie { height: 1%; }
   
div.galerie {
  overflow: hidden; /* zum Umschließen der Floats */ 
  padding: 25px 10px 10px 0; 
  margin: 0 3px 3px 0; 
}
div.galerie img {
  float: left; 
  padding: 4px; 
  border: 1px solid #ddd; 
  border-right-color: #aaa; 
  border-bottom-color: #aaa; 
  margin-right: 15px; 
  margin-bottom: 15px; 
}

Also dies ist das 3 spaltige Layout, und für das 2 spaltige einfach beim Content

margin-right: 144px;

raus und natürlich, den Inhalt aus dem CONTENT Bereich. Und somit habe ich ein valides Layout ohne Clearing und sonst was. Aber im IE 6 macht er mir Probleme und verzieht die Rechte Spalte. Und auch sonst wollen nicht alle Browser, die Spalte wegmachen, hast du eine Idee ?
Brauchst du mehr Infos ?

Gruss Marijo

erzengel ·

Bitte stell das mal online... vielleicht schaue ich dann mal drüber. Es gibt zig Hacks, das kann schon ein gefuckel werden.

Das Beispiel was ich dir geschickt habe, funktioniert eigentlich in allen Browsern.

Wie man unterschiedliche Layouts hinterlegt, da bietet Typo3 glaub ich auch mehrere Möglichkeiten. Ich mache es zum Beispiel so, dass generell die Startseite, das Haupttemplate hat (z.B 3 Spaltig), der Menüpunkt "News" bekommt ein 2 spaltiges Layout und wird nach unten vererbt, aber nicht auf die Menüpunkte die auf der selben Ebene sind.

71..bildlinks {
72.  float: left; 
73.  padding: 3px; 
74.  border: 5px solid #fff; 
75.  margin-right: 10px; 
76.  margin-bottom: 10px; 
77.}
78..bildrechts {
79.  float: right; 
80.  padding: 3px; 
81.  border: 5px solid #fff;
82.  margin-bottom: 10px; 
83.  margin-left: 10px; 
84.}

Wofür brauchst du das? Typo3 hat sowas bereits im Core drin, also Klassen die Bilder positionieren. (Wenn du ein Inhaltselement mit Text und Bild einfügst)

MFG Michael

Marijoman ·

Hallo erzengel

Also dank dir erstmal für die ganzen Tipps, besonders für die Bilder. Werde das in dem Fall entfernen.
Nun zu deinem Vorschlag das ganze umzusetzen, muss ich zuerst mal durch den Kopf gehen lassen, damit ich dies nachvollziehen kann.
Ich schreibe dir mal wie ich das brauche und bis jetzt gelöst habe. Ich habe im ROOT TS Setup eine GLOBAL Anweisung mit :

[globalVar = TSFE:page|layout = 1]
page.10.template.file = fileadmin/templates/template2col.html
page.includeCSS.file2= fileadmin/templates/css/main2col.css
[global]

Damit verweise ich auf das andere Template und auch im ROOT des TS Conig habe ich eine Anweisung für die Spalten :

TCEFORM.pages.layout {
                      altLabels {
                                 0 = Standard (mit rechter Spalte)
                                 1 = ohne rechte Spalte
                                 }
                      removeItems = 2,3,4,5,6
}

Dies hat mir Georg vom Forum empfohlen. Das habe ich bis dato auch für gut empfunden, jedoch mit dem Problem, dass ich eben kein valides CSS mit Tabellen aufgebaut hatte. Ich bin dann aber mit dem Seminar Manager in Konflikt gekommen, da dieser die Inhalte nicht ausgegeben hat, weil dies wie Oliver Klee (Author Seminar Manager) sagte am internen Validator gelegen hat. Nun nachdem ich das valide CSS eingebunden habe, auch die Inhalte wirklich so umgesetzt werden.

Hier der Link auf meinem Serverplatzt :

Da siehst du auch mein Problem mit der ganzen Sache der Spalten :

http://4yourdesign.com/typo3/index.php?id=4

Nicht erschrecken, die 3 Spalte wird nicht mehr verschoben, bzw. weggemacht. Muss mal schauen warum oder besser noch werde schauen, dass ich die Spalte durch Inhalte dynamisch verschieben lasse wenn vorhanden, dachte ich mir.

Also bis dann und dank dir noch mal für deine Hilfe, dass du dich meiner angenommen hast.

Gruss Marijo

erzengel ·

Der Code ist doch kopiert zum größten Teil. Und das Template ist doch noch kein Typo3 HTML Template!!!

Die CSS die du gepostet hast und die du, du auf der unten genannten Seite vewendest stimmen nicht überein.

Was mir mal so grob aufgefallen ist, es fehlen Simikolons, Anfürhungszeichen im Code, Zudem braucht man kein Postion. Du verwendest mehrere CSS Dateien... passt das nicht strukturiert in einer? Oder @Import wäre vielleicht auch eine Möglichkeit.

Die Tabelle ist zu groß für die Seite, deshalb läuft das auch mit in die 3 Spalte.

Fang lieber nochmal mit dem Beispiel was ich dir geschickt habe an. Es ist eigentlich relativ einfach die Seite zu dem Layout zu bewegen.

MFG Michael

erzengel ·

Also ich habe das mal in 10 minuten angepasst:

layout.css :

body {
background-color: #ebebeb;
font-size: 11px;
font-family: Verdana, Arial, SunSans-Regular, Sans-Serif;
color:#564b47;
padding:0px;
margin:0px;
}


/* ----------container zentriert das layout-------------- */
#container {
width: 904px;
margin-bottom: 10px;
margin-left: auto;
margin-right: auto;
background-color: #c5d9f1;
}

/* ----------banner for logo-------------- */
#banner {
background-color: #ebebeb;
text-align: right;
padding: 0px;
margin: 0px;
}
#banner img {padding:10px 0px;} 

/* -----------------Main Menu--------------------- */
#mainmenu {
width: 904px;
margin-bottom: 0px;
background-color: #c5d9f1;
height: auto;
min-height: 20px;
line-height: 20px;
background-color: #ebebeb;
}
/* -----------------Inhalt--------------------- */
#content {
background-color: #ffffff;
padding: 0px;
margin-left: 200px;
margin-right: 0px;
min-height:600px;
height: auto; 
}

/* -----------------Inhalt--------------------- */
#content_3column {
background-color: #ffffff;
padding: 0px;
margin-left: 200px;
margin-right: 200px;
min-height:600px;
height: auto; 
}

/* --------------left navigavtion------------- */
#left {
float: left;
width: 200px;
margin: 0px;
padding: 0px;
background-color: #c5d9f1;
}

/* --------------Rechte Spalte------------- */
#right {
float: right;
width: 200px;
margin: 0px;
padding: 0px;
background-color: #c5d9f1;
}

/* -----------footer--------------------------- */
#footer {
clear: both;
margin: 0px;
padding: 0px;
text-align: center; 
background-color: #ebebeb;
}

Layout 2 Spalten:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link type="text/css" href="layout.css" rel="stylesheet" media="screen" />
<title>Template: XTML 1.0 Transitional</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<div id="container">
	<div id="banner"><img src="http://4yourdesign.com/typo3/fileadmin/templates/images/logo.png"></div>
	<div id="mainmenu">Hauptmenü</div>
	<div id="left">Menue links</div>
	<div id="content">Inhalt</div>
 	<div id="footer">© Copyritght by KONTAKT Hünenberg / Created by 4 your Design </div>
</div>
</body>
</html>

Layout 3 Spalten

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link type="text/css" href="layout.css" rel="stylesheet" media="screen" />
<title>Template: XTML 1.0 Transitional</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<div id="container">
	<div id="banner"><img src="http://4yourdesign.com/typo3/fileadmin/templates/images/logo.png"></div>
	<div id="mainmenu">Hauptmenü</div>
	<div id="left">Menue links</div>
	<div id="right">Rechts</div>
	<div id="content_3column">3 Spalte</div>
 	<div id="footer">© Copyritght by KONTAKT Hünenberg / Created by 4 your Design </div>
</div>
</body>
</html>

Ok muss natürlich noch angepasst werden.

MFG Michael

Marijoman ·

Hallo erzengel

Tschuldige mich, dass ich erst jetzt auf deinen Beitrag antworte, aber bin voll im Dilämma im Moment. Möchte diese Seite endlich mal fertigstellen, und habe auch sonst noch einen Sach voll Arbeit u bewältigen.Ha

Also auf den ersten Blick habe ich erkannt, dass du dem Container zwei Werte alla auto gegeben hast. Habe dies zuerst auch versucht, aber einfach ohne Erfolg. Nun habe ich meine letzte Version, die du ja dann auch kopiert und überarbeitet hast noochmal überarbeitet und es klappt. Nun so gut so weit. Habe mich dann schon fast gefreut, jedoch als ich die Seite im Internet Explorer anschaue, ist eine erste Spalte ohne Hintergrundfarbe. Komischerweise aber nicht auf allen Seiten, sondern nur da wo die 3 Spaltenlayouts zum Tragen kommen. Also ein IE Problem wo ich dann einen Hack suchen muss. Denn in den andern Browsern klappt alles wie gewünscht. Werde noch einen Post machen, um eine Quote an Personen, die mir bei der Hilfe des Problems helfen können, anzusteuern. Würde mich auch freuen wenn du mir einen Tipp geben kannst. Kannst ja mal reinschauen.

Hier der Link, nicht vergessen im IE anzuschauen, falls du schauen willst :

http://www.4yourdesign.com/typo3/index.php?id=121

Grüsse Marijo

erzengel ·

Also in meinem Beispiel steht alles so wie es sein muss.

Der Container, die Linke und Rechte Spalte bekommen die selbe Hintergrund Farbe. Vielleicht stimmt irgendwas mit dem CSS der Menüs nicht.

Im IE 8 sieht es ok aus, also die erste Spalte.
Wobei das CSS des linken Menüs ja auch vorher nicht ok war, Schriftfarbe bei Hover, zu viel Abstand.

MFG Michael

PS: Haben wir alle nicht viel zu tun? Abnehmen tut uns doch keiner die Arbeit. Teilweise machst du dir selbst zuviel arbeit 😉.

Marijoman ·

Hallo erzengel

Na da hast du wohl recht, mit dem letzten Satz im Anhang P.S.: !! Ich mache mir meistens mehr Arbeit als es sein müsste.
Jetzt zu deinem Tipp wegen dem Menü, meinst du das CSS kann das Haupt CSS beeinträchtigen ? Werde ich demnach mal checken müssen.
Dank dir für die Tipps und deine Hilfe. Werde dir noch Bescheid geben wie ich es hinbekommen habe.

Gruss Marijo

erzengel ·

Nein, ich meinte wenn du auf dem Linken Menü gehst und sich dann die Untermenüs öffnen, dann wird beim Hover die Schriftfarbe wie die Hintergrundfarbe des Elements angezeigt. Die Untermenüs sind ziemlich hoch.

Im IE 7 wird mir recht die Spalte nicht Blau angezeigt... aber das Menü richtig. Komisch.

MFG Michael