Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: Spaltendesign: Inhalt horizontal verschoben

      
  1. #1
    ise
    ise ist offline
    Forum Newbie
    Registriert seit
    08.03.2011
    Beiträge
    12

    Spaltendesign: Inhalt horizontal verschoben

    Hallo zusammen,
    Ich kämpfe mit einem CSS Problem und komme einfach nicht weiter.
    Die Webseite läuft auf Typo3 Ver. 4.5.2. Ich verwende ein zweispaltiges Templates mit TemplaVoila. In der linken Spalte habe ich das Menu (tabellarisch), welches mit TypoScript automatisch erzeugt wird. Rechts ist der Seiteninhalt.
    Nun hab ich das Problem, dass das Menu immer unterhalb des Inhalts in der rechten Spalte... (siehe Anhang).
    Wenn ich aber das Menu durch einen simplen Text ersetze, so besteht das Problem nicht. Auch wenn ich die linke Spalte breiter mache, bleibt das Menü über dem Inhalt rechts.
    Hat da jemand eine Idee? Weder float, vertical-align noch sonst was konnte bisher mein Problem beheben.

    Vielen Dank!
    Gruss
    Ise
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken Spaltendesign: Inhalt horizontal verschoben-bildschirmfoto-2011-05-25-um-21.39.03.png  

  2. #2
    ise
    ise ist offline
    Forum Newbie
    Registriert seit
    08.03.2011
    Beiträge
    12
    Hat niemand eine Idee? Wenn für die Hilfe irgend das Typoscript, CSS oder sonst was benötigt wird teilt mir das bitte mit. Ich stelle das gerne zur Verfügung.

    Vielen Dank für eure Hilfe!
    Gruss
    Ise

  3. #3
    ise
    ise ist offline
    Forum Newbie
    Registriert seit
    08.03.2011
    Beiträge
    12

    Unglücklich

    Also ich versuchs nochmal, denn ich komme bei diesem Problem wirklich nicht weiter.

    Die Navigation wird mit folgendem TSCode erzeugt:
    // Hauptnavigation erzeugen
    lib.field_left= HMENU
    lib.field_left {
    1 = TMENU
    1 {
    expAll = 1
    wrap = <ul id="nav">|</ul>
    noBlur = 1
    NO = 1
    NO.wrapItemAndSub = <li>|</li>

    IFSUB = 1
    ACTIFSUB < .IFSUB

    }
    2 < .1
    2.wrap = <ul>|</ul>

    3 < .2
    4 < .2
    }

    Die entsprechenden CSS dafür sieht folgendermassen aus:
    Code:
    ul#nav,ul#nav ul {
    	margin: 0;
    	padding: 0;
    	width: 150px; 
    	border-bottom: 1px solid #ccc;
    	background: #fff; 
    	color: black;
    	font-size: 100%;
    	}
     
    ul#nav li {
    	position: relative;
    	list-style: none;
    	margin: 0px;
    	}
     
    ul#nav li a {
    	display: block;
    	text-decoration: none;
    	color: #777;
    	padding: 5px;
    	border: 1px solid #ccc;
    	border-bottom: 0;
    	}
    
    ul#nav ul {
    	position: absolute;
    	display: none;
    	background-color: #ffffff;
    	z-index: 1;
    	left: 135px; 
    	top: 0;
    	overflow: visible;
    	}
    Hilft dies euch vielleicht weiter mir zu helfen? Wie gesagt, wenn ich anstelle der Navigation ein simpler Text in die linke Spalte einfüge, so wird dieser sauber neben dem Inhalt der Hauptspalte angezeigt.

    Ich wäre euch wirklich um jeden Hinweis dankbar!

    Grüsse
    Ise

  4. #4
    Forum Crack Avatar von etux
    Registriert seit
    08.02.2008
    Ort
    Berlin
    Beiträge
    1.206
    Poste bitte einen Link zu Deiner Site, sonst wird das hier nichts

    .

  5. #5
    ise
    ise ist offline
    Forum Newbie
    Registriert seit
    08.03.2011
    Beiträge
    12
    Zitat Zitat von etux Beitrag anzeigen
    Poste bitte einen Link zu Deiner Site, sonst wird das hier nichts

    .
    Danke für eine Rückmeldung. Die Seite ist hier zu finden
    Home

  6. #6
    Forum Crack Avatar von etux
    Registriert seit
    08.02.2008
    Ort
    Berlin
    Beiträge
    1.206
    Wenn Du YAML anwendest, muss Du es auch verstehen. Vor allem dann, wenn Du vor hast, mehr daran zu ändern, als nur ein Paar Hintergrundfarben an zu passen.
    Dein eigentliches Problem ist die Quellcode-Struktur. Wenn Du da was änderst, muss Du es auch konsequent machen und alle betreffende Dateien entsprechend anpassen.

    Wenn ich erst mal darüber hinweg sehe, würde ich Dein Problem auf die „globale Wirkung von Clear“ reduzieren.
    Stichworte für Deine Suche: „BFC – Block Formatting Context“, Wirkung von „Float und Clear einschränken“ und eben „globale Wirkung von Float und Clear“.

    Das es daran liegt, kannst Du Dich kurz (testweise) überzeugen, indem Du div#col3 oder div#col3_content ein „overflow: hidden“ gibst.

    Übrigens sehe ich keinen Sinn, YAML bei Deiner Website an zu wenden. Und schon gar nicht bei einer TYPO3 Installation. Was kann YAML, was TYPO3 nicht kann?
    Schon vergessen – TYPO3 ist ein Framework.
    Das letzte mindert natürlich nicht im geringsten meinen großen Respekt vor Dirk Jesse und seiner grandiosen Arbeit

    .

  7. #7
    Forum Crack Avatar von etux
    Registriert seit
    08.02.2008
    Ort
    Berlin
    Beiträge
    1.206
    Nachtrag:
    ich sehe gerade, dass Du an Deiner Website arbeitest und dem div#col3_content nicht nur testweise „overflow: hidden“ gibst. Noch mal – das behebt Dein Problem nicht. Denn so hast Du gleich das nächste – die aufklappende zweite Ebene der Navigation.
    „overflow: hidden“ etabliert ein „BFC“ bei div#col3_content und schränkt so die Wirkung von Clear (ul#nav hat ein „clear: both;“) ein. Es sollte Dich nur davon überzeugen, dass Dein Problem oberflächlich betrachtet mit der „globalen Wirkung von Clear“ zu tun hat. Und nichts weiter.

    Es sind aber auch andere Eigenschaften, die wie „overflow“ (hidden) ein BFC etablieren. Die meist benutzte und unproblematischste ist Float. Du hättest also auch anstatt „overflow: hidden“ ein „float: left“ notieren können (weitere kleine Anpassungen inbegriffen). Das Abschneiden der aufklappenden zweiten Ebene wäre somit auch vermieden.
    Das Problem ist nur, wenn in die Spalte später Inhalt kommt, das Elementen mit „clear“ oder „float“ beinhaltet, geht das Ganze noch mal vom Vorne los.

    Solche Probleme sind fast vorprogrammiert, wenn in einem Element (in Deinem Fall: div#main) floatende und nicht floatende Elementen stehen (div#col1, div#col3. div#col2 wird sicher auch irgendwann auftauchen).
    So welche Layouts waren vor ein Paar Jahren sehr modern, wenn es darum ging Spalten mit festen und flüssigen Breiten (ohne Breiten-Angabe) zu mischen. Oder eben bei einem CSS-Framework. Es kommt aber, wie Du siehst, oft zu Problemen.

    Wie man so ein Layout aktuell baut und die Probleme vermeidet, kann ich Dir auch sagen. Es wären aber, auch wenn geringe, Änderungen am Quellcode nötig. Die Frage ist nur – was bleibt am Ende vom YAML überhaupt übrig? Die unzähligen CSS-Dateien!? Und womöglich genau so viele html-Vorlagen.

    Ich würde Dir raten, entweder was zu nehmen, was Du ohne große Änderungen übernehmen kannst, oder Dir was selbst zu bauen.
    Und es muss kein CSS-Framework sein. Mit TYPO3 eigenen Mitteln kannst Du jedes erdenklichen Szenario umsetzen – auch Layouts mit sich dynamisch veränderten Anzahl, Position und Breiten der Spalten

    .

  8. #8
    ise
    ise ist offline
    Forum Newbie
    Registriert seit
    08.03.2011
    Beiträge
    12
    Vielen Dank für deine Rückmeldung. Ich erstelle diese Seite für einen Kunden, der möglichst wenig Geld ausgeben möchte. Aus diesem Grund habe ich auch auf YAML zurückgegriffen, um dort ein passendes Template verwenden zu können, da das erstellen eines eigenen Templates aufwändiger -> mehr Kosten mit sich zieht.
    Die Seite läuft noch in einer Testumgebung, bin gestern beim Testen einfach nicht weitergekommen, darum ist das overflow:hidden noch drin.

    Es würde mich natürlich interessieren, wie man ein solches Layout ohne Probleme baut. Da es erst meine zweite Typo3 Seite ist, bin ich noch voll in der Lehrphase. Da bin ich für alles dankbar.

    Gruss
    Ise

  9. #9
    Forum Crack Avatar von etux
    Registriert seit
    08.02.2008
    Ort
    Berlin
    Beiträge
    1.206
    Zitat Zitat von ise Beitrag anzeigen
    ... Ich erstelle diese Seite für einen Kunden, der möglichst wenig Geld ausgeben möchte. Aus diesem Grund habe ich auch auf YAML zurückgegriffen, um dort ein passendes Template verwenden zu können, da das erstellen eines eigenen Templates aufwändiger -> mehr Kosten mit sich zieht ...
    Klingt für mich ziemlich unprofessionell, aber die Entscheidung trifft wohl jeder für sich selbst (und den Kunden). Ob es wirklich Zeit (und Ressourcen), bzw. Kosten sparend ist …? Gerade bei so einer kleinen Website so viele unnötige HTTP-Requests zu erzwingen!?
    Zitat Zitat von ise Beitrag anzeigen
    Es würde mich natürlich interessieren, wie man ein solches Layout ohne Probleme baut.
    Möglichkeiten gibt es einige. Welche man nimmt, hängt auch vom Gesamtkonzept ab. Meist sind das Methoden, die auf einer Verschiebung mit negativen Margins auf Paddings, Border oder wiederum auf Margins basieren. Was auch mit einer relativen Positionierung geht.
    In Deinem Fall wäre es am einfachsten, um den gesamten Inhalt von „col3“ ein extra Element ein zu setzen, was Float und eine Breite von 100% hat. Im Quellcode umschließt dann div#col3 das floatende Element, schließt aber den Float selbst nicht ein. In den meisten Fällen ist das auch nicht notwendig. Will man allerdings div#col3 für Hintergrundbilder und/oder -Farben benutzen, muss der Float beendet werden (was in der Regel unproblematisch ist).
    Zitat Zitat von ise Beitrag anzeigen
    Da es erst meine zweite Typo3 Seite ist, bin ich noch voll in der Lehrphase.
    Mit TYPO3 hat das nichts zu tun. Mit CSS schon

    .

  10. #10
    ise
    ise ist offline
    Forum Newbie
    Registriert seit
    08.03.2011
    Beiträge
    12
    Vielen Dank schon mal etux für deine Ausführungen. Ich habe auf yaml zurückgegriffen, da ich dachte, dies würde mit Typo3 sauber funktionieren. Und warum ein neues Layout erstellen, wenn im Netz bereits etliche komplette zur Verfügung gestellt werden. Man soll das Rad ja nicht neu erfinden. Aber nun bin ich auf das erwähnte Problem gestossen, was natürlich Handlungsbedarf mit sich zieht.
    Ich hab nun also folgendes gemacht:
    HTML-Code:
    <!-- begin: #col3 static column -->
          <div id="col3" role="complementary">
          <div id="col3_help">
            <div id="col3_content" class="clearfix">
            </div>
            </div>
            <div id="ie_clearing">&nbsp;</div>
            <!-- End: IE Column Clearing -->
          </div>
          <!-- end: #col3 -->
    HTML-Code:
    #col3 { margin-right: 75%; margin-left: 0; }
      #col3_content { padding-left: 20px; padding-right: 10px; }
      
      #col3_help { width: 100%; float: inherit; }
    So hab ich deine Anweisungen interpretiert. Hab ich da was falsch verstanden?

    Gruss
    Ise

 

 
Seite 1 von 2 12 LetzteLetzte

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Facebook Kommentare

Ähnliche Themen

  1. keine Ausgabe bei Marker ###Inhalt###
    Von alexd0001 im Forum TYPO3 4.x Fragen und Probleme
    Antworten: 3
    Letzter Beitrag: 04.05.2011, 12:13
  2. Doppelter oder kein Inhalt bei zweiter Sprache
    Von mgruber im Forum TYPO3 4.x Fragen und Probleme
    Antworten: 1
    Letzter Beitrag: 31.03.2010, 15:48
  3. Kein Inhalt wird angezeigt
    Von sanschezz im Forum TYPO3 4.x Fragen und Probleme
    Antworten: 2
    Letzter Beitrag: 09.03.2010, 16:09
  4. Marker ###INHALT### wird nicht angezeigt
    Von pulpthekla im Forum TYPO3 4.x Fragen und Probleme
    Antworten: 6
    Letzter Beitrag: 15.01.2007, 17:59
  5. wrap um den Inhalt eines Tags
    Von Patrick007 im Forum TYPO3 3.x Fragen und Probleme
    Antworten: 3
    Letzter Beitrag: 14.12.2005, 08:37

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

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