Antworten auf deine Fragen:
Neues Thema erstellen

Positionsprobleme

K

kornyclown

Guest

Es gibt da zwei Baustellen
1.
Das <img> befindet sich in einem Container, der größer ist als es selbst. Innerhalb dieses Containers wurde der/die/das margin auf margin: 3% auto; gestellt. Demzufolge müsste es sich doch auf der X-Achse mittig positionieren. Warum tut es das nicht?

2.
Der Container "sideWrapper" soll sich rechts neben den zwei "listWrapper" Containern befinden. Da die "listWrapper"aber relativ sind, fügt sich der "sideWrapper" automatisch unter den beiden ein. Wie kriege ich ihn dort hin sodass er sich rechts neben den beiden befindet und über die komplette Höhe der "listWrapper" geht?

Quellcode:
HTML:
<body>

    <div class="wrapper">
        <header>
            <img src="http://www.psd-tutorials.de/forum/images/TMLogo.png">
            <div class="headline">Thomas Manz | VFX Generalist</div>
        </header>
        <nav class="mainNav">
            <ul>
                <li><a href="index.html">Home</a></li>
                <li><a href="reel.html">Reel</a></li>
                <li><a href="gallery.html">Gallery</a></li>
                <li><a href="vita.html">Vita</a></li>
                <li><a href="contact">Contact</a></li>
            </ul>
        </nav>
        
        <section>
            <div class="listWrapper">
                <ul>Skills
                    <li>3D Modeling</li>
                    <li>Digital Sculpting</li>
                    <li>Texturing</li>
                    <li>Lighting</li>
                    <li>Rendering</li>
                    <li>Digital Compositing</li>
                    <li>Matchmoving</li>
                    <li>Python Scripting</li>
                </ul>
            </div>
            <div class="listWrapper">
                <ul>Software
                    <li>Maya</li>
                    <li>Cinema 4D</li>
                    <li>ZBrush</li>
                    <li>Nuke</li>
                    <li>Synth Eyes</li>
                    <li>Photoshop</li>
                </ul>
            </div>
            <div class="sideWrapper">
                dies ist ein Test. dies ist ein Test. dies ist ein Test.
dies ist ein Test. dies ist ein Test. dies ist ein Test. dies ist ein Test. dies ist ein Test. dies ist ein Test. dies ist ein Test. dies ist ein Test.      </div>
        </section>
        <footer>
            
        </footer>
    </div><!-- end wrapper -->

    
</body>
Stylesheet:
Code:
/*Reset*/
* {padding: 0; margin: 0;}
ul, ol, li {list-style: none;}
a {text-decoration: none; color: #000;}
img {border: none;}


/*Background*/
body {
    background: #000000; /* Old browsers */
    background: -moz-linear-gradient(left,  #000000 0%, #3f3f3f 50%, #000000 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, right top, color-stop(0%,#000000), color-stop(50%,#3f3f3f), color-stop(100%,#000000)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(left,  #000000 0%,#3f3f3f 50%,#000000 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(left,  #000000 0%,#3f3f3f 50%,#000000 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(left,  #000000 0%,#3f3f3f 50%,#000000 100%); /* IE10+ */
    background: linear-gradient(to right,  #000000 0%,#3f3f3f 50%,#000000 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#000000',GradientType=1 ); /* IE6-9 */
    }


/*Wrapper*/
.wrapper {width: 80%; height: 100%; height: auto; overflow: hidden; margin: auto; position: relative;}


/*Header*/
header {width: 100%; height: 100%; margin: 5% auto 1%; position: relative; background: #eee;}
header img {width: 150px; height: 123px; max-width: 100%; max-height: auto; margin: 3% auto; position: relative; background: green;}
.headline {width: 100%; text-align: center; font-family: Cardo; font-size: 2em;}


/*Navigation*/
.mainNav {width: 100%; margin: 1% auto; text-align: center;}
.mainNav ul {width: 100%; margin: auto; position: relative; display: table; background: #eee;}
.mainNav ul li {display: table-cell; table-layout: fixed; text-align: center;}
.mainNav ul li a {width: 200%; text-decoration: none; font-family: Cardo; font-size: 1.3em; font-weight: normal; color: #000;}


/*Content*/
section {width: 100%; position: relative;}
.listWrapper {width: 49%; height: 100%; margin: 0 0 1% 0; padding: 2%; position: relative; background: #eee;}
.listWrapper ul {font-family: Cardo; font-size: 1.3em; font-weight: bold; position: relative;}
.listWrapper ul li {font-weight: normal; margin: 0 5%; position: relative;}
.sideWrapper {width: 45%; height: 100%; margin: 0 0 0 50%; position: relative; float: right; font-size: 1.3em; background: #eee;}
Ich erwarte natürlich nicht, dass ihr das für mich schreibt. Nur wo die Fehler liegen, würde mir schon enorm helfen.
 
Zuletzt bearbeitet von einem Moderator:

rafoldi

Aktives Mitglied

AW: Positionsprobleme

ist die Seite alleinstehend? oder ist hier ein CMS System im Einsatz? Joomla ?

Klappt die Positionierung wenn die Du UL und LI weg lässt?
 
K

kornyclown

Guest

AW: Positionsprobleme

Nein, kein CMS oder ähnliches. Nur der Quellcode mit Stylesheet, ganz langweilig.

Naja, da die listWrapper ja auf height: 100%; stehen sind sie ja nur so groß wie ihr Inhalt. Wenn ich die ul und li weglasse sind die Container ja leer und somit auch weg.
 

rafoldi

Aktives Mitglied

AW: Positionsprobleme

nee ich meine nicht den Inhalt sondern die Container UL und LI weglassen.

Eventuell kann auch der Style direkt hinterlegt werden.
Etwa so
<div class="listWrapper">
Skills
3D Modeling
Digital Sculpting
Texturing
.....
</div>

Denke Du hast die CSS Datei eingebunden?

Kennst Du diese Seite?

Glaube jedoch dass Dir dieser genau weiterhelfen wird!
 

Myhar

Hat es drauf

AW: Positionsprobleme

Zuerst eine Bitte: Ignoriere rafoldis Hinweis, die ul weg zu lassen. Die ist richtig und gehört da hin.

Bezüglich deines ersten Problems: Ein Bild ist kein Blockelement und kann so natürlich nicht zentriert werden. Gibst du dem Bild ein display:block, dann wird es auch zentriert.

Bezüglich deines zweiten Problems:
Setze dich mit floats auseinander. Google nach zwei- oder mehrspaltigen Layouts, dann wirst du mehr als genügend Tutorials finden.
 
K

kornyclown

Guest

AW: Positionsprobleme

Ja cool. Das klingt doch echt gut.
Das img kein Block Element ist, wusste ich garnicht. Wonach richtet sich das, ob ein Element standartmäßig als Block Element behandelt wird, ich meine hat es einen nützlichen Grund dass das <img> Tag nicht nativ als Block Element behandelt wird?
 

Myhar

Hat es drauf

AW: Positionsprobleme

Das liegt an der Standardefinition ;)
Und einen Grund gibt es auch dafür: Man kann Bilder ohne weiteres in einen Text einbauen:
"Lorem ipsum <bild> dolor sit" Das wäre sehr störend, wenn bei einem Text mit Bildern jedes Bild in einer neuen Zeile beginnen würde. Dagegen kann ein Absatz keinen weiteren Absatz (oder eine Überschrift etc.) beinhalten, weshalb diese Elemente block Elemente sind.
 

rafoldi

Aktives Mitglied

AW: Positionsprobleme

Zuerst eine Bitte: Ignoriere rafoldis Hinweis, die ul weg zu lassen. Die ist richtig und gehört da hin.
Habe nicht gesagt dass UL und LI nicht richtig sind.

Egal
Tausche doch
Code:
.sideWrapper {width: 45%; height: 100%; margin: 0 0 0 50%; position:  relative; float: right; font-size: 1.3em; background: #eee;}
gegen

Code:
.sideWrapper {width: 45%; height: 100%; margin: 0 0 0 50%; position:  absolute;top: 17px; right: 5px; float: right; font-size: 1.3em;  background: #eee; }
aus.
Ich bin überzeugt es gibt noch mehr Möglichkeiten:D

Noch ein paar kleine Änderungen / Erweiterungen und es ist bald "fertig".
 
K

kornyclown

Guest

AW: Positionsprobleme

Bezüglich deines zweiten Problems:
Setze dich mit floats auseinander. Google nach zwei- oder mehrspaltigen Layouts, dann wirst du mehr als genügend Tutorials finden.

Also ich hab das jetzt mit multi-column ausprobiert aber irgendwie verreißt es mir jetzt alles. Meine Listen werden einfach mittendrin umgebrochen und die Abstände zwischen den Spalten stimmt auch überhaupt nicht.

Habe nicht gesagt dass UL und LI nicht richtig sind.

Egal
Tausche doch
Code:
.sideWrapper {width: 45%; height: 100%; margin: 0 0 0 50%; position:  relative; float: right; font-size: 1.3em; background: #eee;}
gegen

Code:
.sideWrapper {width: 45%; height: 100%; margin: 0 0 0 50%; position:  absolute;top: 17px; right: 5px; float: right; font-size: 1.3em;  background: #eee; }
aus.
Ich bin überzeugt es gibt noch mehr Möglichkeiten:D

Noch ein paar kleine Änderungen / Erweiterungen und es ist bald "fertig".

Leider hat mir diese Variante nicht ganz das erzeugt, was ich haben will und ich habs auch leider nicht geschafft es so zu editieren dass es für mich passt aber trotzdem danke.
 

Myhar

Hat es drauf

AW: Positionsprobleme

nee ich meine nicht den Inhalt sondern die Container UL und LI weglassen.

Habe nicht gesagt dass UL und LI nicht richtig sind.
Doch:
nee ich meine nicht den Inhalt sondern die Container UL und LI weglassen.
Wenn er sie weglassen soll, dann schlußfolgere ich daraus, dass du davon ausgehst, dass sie nicht richtig sind. Warum sollte er sie sonst weg lassen, wenn sie denn richtig sind? :uhm:

Egal

Code:
.sideWrapper {width: 45%; height: 100%; margin: 0 0 0 50%; position:  absolute;top: 17px; right: 5px; float: right; font-size: 1.3em;  background: #eee; }
aus.

Absolute positionierung ist hier auch keine Lösung, ein zwei (oder mehrspaltiges) Layout setzt man mittels float um. Sicher, auf den ersten Blick wirkt position:absolute hier nach einer guten Lösung, aber sinnvoll ist es nicht, da es oft mehr Probleme verursacht als löst.
@kornyclown: Wenn du deine Versuche mit multi-column Layout postest, dann kann man dir auch weiterhelfen. Fehlerhafte Abstände & "zerreißen" etc. deuten darauf hin, dass lediglich margins/paddings/width/etc. falsch sind. Mehr kann ich dir aufgrund fehlender Zusatzinfos nicht helfen. Bzw. hast du die CSS3 Eigenschaft multi-column verwendet? Das hat nichts mit float zu tun und ist hier demzufolge auch nicht zielführend: multi-column is for laying out text - like in newspapers. Du hast aber keinen reinen Text sondern Listen und Block-Elemente.
Du wirst nicht darum kommen, dich mit floats auseinander zu setzen und ein zweispaltiges Layout aufzubauen.
 
K

kornyclown

Guest

AW: Positionsprobleme

Achso :uhm:
Ich hab bei Google mehrspaltiges Layout eingegeben und habe daraufhin eine Menge Einträge für multi-column gefunden und dachte mir dann, dass das einfach die englische bezeichnung dafür wäre, wo doch mehrspaltig die direkte übersetzung von multi-column ist. ;)
 

manfred_hst

Nicht mehr ganz neu hier

AW: Positionsprobleme

hi kornyclown,
gucke mal nach der weite deiner listwrapper und sidewrapper, da kommst du auf 143%. wie sollen die in 100% reinpassen.
gruß Manfred
 
K

kornyclown

Guest

AW: Positionsprobleme

Wieso denn das? Die listWrapper 49% und der sideWrapper 45% sind bei mir 94%.
 
K

kornyclown

Guest

AW: Positionsprobleme

Aber durch das position: relative; ordnen sie sich doch automatisch untereinander an.
 
K

kornyclown

Guest

AW: Positionsprobleme

Nein nein, die listWrapper sollen beide untereinander stehen und der sideWrapper rechts neben den listWrappern.
Ich habe es jetzt auch endlich geschafft, fast. Die Position stimmt aber ich wollte eigentlich, dass der sideWrapper, unabhängig von dessen Inhalt, die gleiche höhe hat wie sein Parent, das <section> Tag.

Der aktuelle Code ist hier:
HTML:
<!DOCTYPE HTML>
<html>
<head>
    <meta charset="UTF-8">
    <title>Thomas Manz.de | VFX Generalist</title>
    <link rel="SHORTCUT ICON" href="icon.png" type="image/png" />
    <link href="css/style.css" rel="stylesheet" type="text/css"></link>

</head>

<body>

    <div class="wrapper">
        <header>
            <img src="images/TMLogo.png">
            <div class="headline">Thomas Manz | VFX Generalist</div>
        </header>
        <nav class="mainNav">
            <ul>
                <li><a href="index.html">Home</a></li>
                <li><a href="reel.html">Reel</a></li>
                <li><a href="gallery.html">Gallery</a></li>
                <li><a href="vita.html">Vita</a></li>
                <li><a href="contact">Contact</a></li>
            </ul>
        </nav>
        
        <section>
            
            <div class="sideWrapper">
                dies ist ein Test. dies ist ein Test. 
                dies ist ein Test. dies ist ein Test.     
                dies ist ein Test. dies ist ein Test. 
                dies ist ein Test. dies ist ein Test. 
                dies ist ein Test. dies ist ein Test.
                dies ist ein Test. dies ist ein Test. 
                dies ist ein Test. dies ist ein Test.     
                dies ist ein Test. dies ist ein Test. 
                dies ist ein Test. dies ist ein Test. 
                dies ist ein Test. dies ist ein Test.
                dies ist ein Test. dies ist ein Test. 
                dies ist ein Test. dies ist ein Test.     
                dies ist ein Test. dies ist ein Test. 
                dies ist ein Test. dies ist ein Test. 
                dies ist ein Test. dies ist ein Test.
                dies ist ein Test. dies ist ein Test. 
                dies ist ein Test. dies ist ein Test.     
                dies ist ein Test. dies ist ein Test. 
                dies ist ein Test. dies ist ein Test. 
                dies ist ein Test. dies ist ein Test.
                dies ist ein Test. dies ist ein Test. 
                dies ist ein Test. dies ist ein Test.     
                dies ist ein Test. dies ist ein Test. 
                dies ist ein Test. dies ist ein Test. 
                dies ist ein Test. dies ist ein Test.
            </div>
            <div class="listWrapper">
                <ul>Skills
                    <li>3D Modeling</li>
                    <li>Digital Sculpting</li>
                    <li>Texturing</li>
                    <li>Lighting</li>
                    <li>Rendering</li>
                    <li>Digital Compositing</li>
                    <li>Matchmoving</li>
                    <li>Python Scripting</li>
                </ul>
            </div>
            <div class="listWrapper">
                <ul>Software
                    <li>Maya</li>
                    <li>Cinema 4D</li>
                    <li>ZBrush</li>
                    <li>Nuke</li>
                    <li>Synth Eyes</li>
                    <li>Photoshop</li>
                </ul>
            </div>
            
        </section>
        <footer>
            
        </footer>
    </div><!-- end wrapper -->

    
</body>

</html>

Code:
@charset "UTF-8";
/* CSS Document */

/*
@font-face {font-family: 'Cardo'; src: url('Cardo-Regular.ttf') format('truetype');}
@font-face {font-family: 'Cardo'; src: url('Cardo-Bold.ttf') format('truetype');}
@font-face {font-family: 'Cardo'; src: url('Cardo-Italic.ttf') format('truetype');}
*/

/* Font Standart: font-family: Cardo; font-size: 15pt; font-weight: normal; color: #000; */
/*Reset*/
* {padding: 0; margin: 0;}
ul, ol, li {list-style: none;}
a {text-decoration: none; color: #000;}
img {border: none;}


/*Background*/
body {
    background: #000000; /* Old browsers */
    background: -moz-linear-gradient(left,  #000000 0%, #3f3f3f 50%, #000000 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, right top, color-stop(0%,#000000), color-stop(50%,#3f3f3f), color-stop(100%,#000000)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(left,  #000000 0%,#3f3f3f 50%,#000000 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(left,  #000000 0%,#3f3f3f 50%,#000000 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(left,  #000000 0%,#3f3f3f 50%,#000000 100%); /* IE10+ */
    background: linear-gradient(to right,  #000000 0%,#3f3f3f 50%,#000000 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#000000',GradientType=1 ); /* IE6-9 */
    }


/*Wrapper*/
.wrapper {width: 80%; height: 100%; height: auto; overflow: hidden; margin: auto; position: relative;}


/*Header*/
header {width: 100%; height: 100%; margin: 5% auto 1%; padding: 2% 0 1% 0; position: relative; background: #eee;}
header img {width: 150px; height: 123px; max-width: 100%; margin: 0 auto; position: relative; display: block;}
.headline {width: 100%; text-align: center; font-family: Cardo; font-size: 2em;}


/*Navigation*/
.mainNav {width: 100%; margin: 1% auto; text-align: center;}
.mainNav ul {width: 100%; margin: auto; position: relative; display: table; background: #eee;}
.mainNav ul li {display: table-cell; table-layout: fixed; text-align: center;}
.mainNav ul li a {width: 200%; text-decoration: none; font-family: Cardo; font-size: 1.3em; font-weight: normal; color: #000;}


/*Content*/
section {width: 100%; position: relative; background: red;}
.sideWrapper {width: 45.5%; height: auto; margin: 0 0 0 0; padding: 2%; float: right; font-size: 1.3em; background: #eee;}
.listWrapper {width: 45.5%; height: 100%; margin: 0 0 1% 0; padding: 2%; position: relative; background: #eee;}
.listWrapper ul {font-family: Cardo; font-size: 1.3em; font-weight: bold; position: relative;}
.listWrapper ul li {font-weight: normal; margin: 0 5%; position: relative;}

Der Trick war den sideWrapper im Quelltext vor die listWrapper zu stellen und im CSS position: relative rauszunehemen und einfach ein float: right einzusetzen.
Aber wie bekomme ich jetzt die Höhe des sideWrapper = Höhe <section>?
 
K

kornyclown

Guest

AW: Positionsprobleme

1.
Wie kriege ich ihn dort hin sodass er sich rechts neben den beiden befindet und über die komplette Höhe der "listWrapper" geht?
;)

2.
Ich habe mir Faux Columns schon angesehen und soweit ich es überblicken kann, geht es immer darum eine Hintergrundgrafik zu wiederholen um den Eindruck von zwei gleichen Spalten zu erzeugen. Das geht bei mir leider nicht. Unter anderem schon deswegen weil zwischen den beiden Spalten eine Lücke ist. Ich habe das mal testweise hochgeladen.
Es geht um die Startseite mit den drei "Kacheln". Die rechte "Kachel" (sideWrapper) soll die gleiche Höhe haben wie die beiden linken zusammen (inkluive Lücke).
Am besten wäre für mich, wenn ich dem sideWrapper sagen kann, dass er immer die gleiche Höhe haben soll wie sein Parent <section>. Leider habe ich auch dafür noch keine funktionierende Methode gefunden.
 
Zuletzt bearbeitet von einem Moderator:
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.620
Beiträge
1.538.374
Mitglieder
67.544
Neuestes Mitglied
janusbarman
Oben