mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 25.04.2024 00:35 Benutzername: Passwort: Auto-Login

Thema: [CSS] 3-spalten layout - aber anders als sonst! vom 18.12.2008


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Allgemeines - Nonprint -> [CSS] 3-spalten layout - aber anders als sonst!
Seite: 1, 2, 3  Weiter
Autor Nachricht
der_tim
Threadersteller

Dabei seit: 29.01.2008
Ort: -
Alter: -
Geschlecht: -
Verfasst Do 18.12.2008 11:14
Titel

[CSS] 3-spalten layout - aber anders als sonst!

Antworten mit Zitat Zum Seitenanfang

hallo,

im zuge der tabellen-zum-layouten-verschwindibus-aktionen bin ich derzeit an eine grenze gestoßen:

und zwar suche ich eine reine css-variante um folgenden code 1:1 umzusetzen:
Code:
<table style="table-layout: fixed; width: 100%;" border="1" cellpadding="0" cellspacing="0">
   <tr>
      <td width="50%">links</td>
      <td width="1000">main</td>
      <td width="50%">rechts</td>
   </tr>
</table>


das geübte auge erblickt: es gibt einen festen, zentrierten bereich und links / rechts daneben tabellenzellen, die sich soweit ausdehnen, wie das browserfenster gerade breit ist. zweck ist, eine website mit den festen ausmaßen zu zentrieren (auch bei ner < 1024er auflösung), links und rechts aber ein gekacheltes bg-bild zu haben - aber: diese bg-bilder sind links und rechts unterschiedlich! es reicht also nicht, einfach der seite selbst die bg-kachel zu geben.

ich brauche unbedingt 2 divs, die sich nach links und rechts den gegebenheiten der breite anpassen. mein vermessener versuch, die 50%-regel der funktionierenden tabellen-variante in css umzumünzen, ging natürlich daneben.

leider bieten die css/3-spalten-template - websites immer nur designs an, wo die 2 spalten außen eine feste breite haben und sich der mittlere div dynamisch anpasst bzw. alle 3 spalten nur aus %-werten bestehen. aber in meinem fall muss die mittlere spalte nunmal die feste breite haben ...

also: gibt es eine möglichkeit, mit css das obige tabellen-konstrukt zu ersetzen? meine tests mit *, %, em, paddings, margins usw. schlugen bisher fehlt ...

grüße,
tim
  View user's profile Private Nachricht senden
netnite

Dabei seit: 24.12.2005
Ort: Thüringen
Alter: 43
Geschlecht: Männlich
Verfasst Do 18.12.2008 11:22
Titel

Antworten mit Zitat Zum Seitenanfang

Schau mal hier: http://www.mycelly.com/

das Template fixed BOX centered, das sollte dem schon nahe kommen was du suchst!
  View user's profile Private Nachricht senden
Anzeige
Anzeige
Kash

Dabei seit: 07.11.2002
Ort: Schopfheim
Alter: 41
Geschlecht: Männlich
Verfasst Do 18.12.2008 12:00
Titel

Antworten mit Zitat Zum Seitenanfang

[edit kash: verschoben von Programmierung // CSS/HTML sind keine Programmiersprachen]

http://www.edition-w3c.de/TR/1998/REC-CSS2-19980512/kap09.html#heading-9.5


Zuletzt bearbeitet von Kash am Do 18.12.2008 12:02, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
pixelpapst303

Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht: Männlich
Verfasst Do 18.12.2008 12:34
Titel

Antworten mit Zitat Zum Seitenanfang

gehts dir nur darum, links und rechts hintergründe hinterlegen zu können, oder willst du dort auch inhalt platzieren??
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
der_tim
Threadersteller

Dabei seit: 29.01.2008
Ort: -
Alter: -
Geschlecht: -
Verfasst Do 18.12.2008 12:56
Titel

Antworten mit Zitat Zum Seitenanfang

hi,

.. also im endeffekt gehts tatsächlich nur darum, in der linken und rechten box jeweils einen gekachelten bg einzugügen. problem ist jedenfalls, dass beide BG-bilder unterschiedlich sind. daher kann ich nicht einfach der kompletten seite die kachel zuweisen. die boxen ziehen sich aber nur auseinander, wenn ich ihnen feste/prozentuale werte gebe (die ja vorher aber nicht wissen kann) oder wenn inhalte in den randboxen sind. aber der inhalt müsste sich dann irgendwie automatisch mit fenster-änderung anpassen (wollte eigentlich kein JS dafür bemühen ..)

im moment sieht mein notbehelf so aus, dass ich ne 2000px-breite grafik habe, die zu 50% aus der linken und zu 50% aus der rechten kachel besteht. das als body-bg zentriert funktioniert ja im prinzip .. nur die dateigröße ist dadurch auch wahnsinig fett .. was ich durch das kacheln ja verhindern wollte.

also soweit ich das sehe, funktioniert das nicht anders. ich werde es wohl wieder mit dem tabellen-konstrukt machen, damit haut es nunmal hin. vielleicht ist der css-gott nicht total sauer, wenn es die einzige layout-tabelle für die ganze site bleibt ... *Schnief*

mfg,
tim
  View user's profile Private Nachricht senden
pixelpapst303

Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht: Männlich
Verfasst Do 18.12.2008 13:00
Titel

Antworten mit Zitat Zum Seitenanfang

der_tim hat geschrieben:
ich werde es wohl wieder mit dem tabellen-konstrukt machen


bist du denn...!!!!???? Grins


Code:

<!DOCTYPE html
     PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
   <head>
      <style type="text/css">
         *, html {
       height: 100%;
    }               
         #links
         {
            background-color: #cccccc;
            position: absolute;
            left: 0px;
            top: 0px;
            height: 100%;
            width: 50%;
         }
         
         #mitte
         {
            background-color: #eeeeee;
            position: absolute;
            left: 50%;
            margin-left: -500px;
            top: 0px;           
            width: 1000px;                       
         }
         #rechts
         {
            background-color: #cecece;
            position: absolute;
            right: 0;
            top: 0px;
            height: 100%;
            width: 50%;
            text-align: right;           
         }
      </style>
   </head>
   
   <body>
      <div id="links">links</div>
     <div id="rechts">rechts</div>
     <div id="mitte">mitte</div>
   </body>
</html>
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
der_tim
Threadersteller

Dabei seit: 29.01.2008
Ort: -
Alter: -
Geschlecht: -
Verfasst Do 18.12.2008 13:32
Titel

Antworten mit Zitat Zum Seitenanfang

... boah vielen dank!

also so krumm habe ich nun wirklich nicht gedacht. naja man lernt nie aus ....


mfg,
tim
  View user's profile Private Nachricht senden
zweitaccount

Dabei seit: 25.01.2008
Ort: -
Alter: -
Geschlecht: -
Verfasst Do 18.12.2008 14:01
Titel

Antworten mit Zitat Zum Seitenanfang

Ähem - nur so am Rande, das dürfte in der Form Probleme beim
Scrollen machen (die scrollen ja weg mit nur der Viewport-Höhe).

Besser wärs mit dem Container drumrum:

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>3Col</title>
<style type="text/css">
   HTML {
      height:100%;
   }
   BODY {
      text-align:center;
      height:100%;
      margin:0;
      padding:0;
   }
   DIV#container {
      position:absolute;
      top:0;
      left:0;
      width:100%;
      min-height:100%;
      background:red;
   }
   DIV#columnLeft {
      position:absolute;
      top:0;
      left:0;
      width:50%;
      bottom:0;
      background:yellow;
      text-align:left;
   }
   DIV#columnRight {
      position:absolute;
      top:0;
      right:0;
      width:50%;
      bottom:0;
      background:pink;
      text-align:right;
   }
   DIV#columnMain {
      position:relative;
      margin:0 auto;
      width:600px;
      min-height:100%;
      background:blue;
   }
</style>
<!--[if lt IE 7]>
   <style type="text/css">
      DIV#columnMain {
         height:100%;
      }
      DIV#columnLeft,
      DIV#columnRight {
         /* das funzt so noch nicht */
         height: expression((document.body.offsetHeight) + 'px');
      }
   </style>
<![endif]-->
</head>

<body>
<div id="container">
   <div id="columnLeft">Left</div>
   <div id="columnRight">Right</div>
   <div id="columnMain">
      Content goes here
      <script>
         for(var i=0;i<100;i++) document.writeln('<p>More Content</p>');
      </script>
      Content ends here
   </div>
</div>
</body>
</html>

Wobei die IE6-expression so nicht funzt.
  View user's profile Private Nachricht senden
 
Ähnliche Themen problem mit 3 spalten css-layout
[css] 3 spalten layout problem
[CSS] Problem mit 3-Spalten Layout
CSS Layout Problem 3 Spalten ich verzweifel (Tabbellenmensch
Zwei Spalten Layout. Linke Seite fix
css 3 spalten layout mit fester mitte - bitte um hilfe!
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2, 3  Weiter
MGi Foren-Übersicht -> Allgemeines - Nonprint


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.