Zurück   BuHa-Security Board > Programmierung und Software-Entwicklung > Web Development
Registrieren Hilfe Benutzerliste Kalender Suchen Heutige Beiträge Alle Foren als gelesen markieren


Antwort
 
Themen-Optionen Ansicht
Alt 30.01.2010, 16:05   #1
PadreJohn
Rodnox' Leibeigener

 
Registriert seit: Jan 2001
Karma: 267 PadreJohn ist eine Bereicherung fuer die Gemeinschaft.
sos [CSS]Anfänge mit CSS - Positionierung und Breite

Hallo Leute,

ich hab schon einige Tuts gelesen und bischen gegoogelt aber CSS ist irgendwie nich mein Ding. Also ich bitte um eure Hilfe - ich denke mir fehlt da grundlegend irgendwas im Verständnis.
Ich baue gerade an einem Template und möchte im Hauptteil (zwischen Header und Footer ) zwei Elemente platzieren. Das eine soll linksbündig mit 150 px Breite sein (im Folgenden optionwindow genannt) - das andere soll daneben liegen und sich breitenmäßig den kompletten Rest schnappen. Nun will ich aber, dass dieses OptionalesMenü-Element ggf. display:none wird. Damit würde ja Platz frei und da sollte sich dann das andere Element drin breit machen - es sollte variabel breit sein, aber immer den maximalen freien Platz nutzen.

Code:
<div style="width:700px; top:125px; position:fixed;">
<div id=optionwindow style="height: 375px; width: 150px; float:left; left: 0px; border: 1px solid brown;">
Optionales Men&uuml;
</div>
<div id=mainwindow style="height: 375px; position:absolute; right:0px; float:left; width:100%; border: 1px solid lime; text-align: center;">
Hauptfenster
</div>
</div>
Und bitte erklärt mir wo genau der Fehler ist und warum das Verhalten schief läuft - damit ich das beim nächsten Mal auch besser mach.
__________________
'Niedergang beginnt mit dem Sieg' Günter Grass

"Wir sind die Kegler.
Und wir selbst sind die Kugel.
Aber wir sind auch die Kegel, die stürzen.
Die Kegelbahn, auf der es donnert, ist unser Herz."
Wolfgang Borchert
________________________________________________
Ich prostituier mich für Rodnox!
PadreJohn ist offline   Mit Zitat antworten
Alt 30.01.2010, 16:15   #2
Shakademus
Member

 
Registriert seit: May 2004
Karma: 831 Shakademus ist eine Bereicherung fuer die Gemeinschaft.
Re: [CSS]Anfänge mit CSS - Positionierung und Breite

Du positionierst mainwindow absolut. Damit nimmst Du es aus dem normalen Fluss.

Eine naheliegende CSS-Lösung fällt mir da nicht ein. Ich würde einfach beim Ändern des optionwindow-Styles auch den mainwindow-Style anpassen.

Geändert von Shakademus (30.01.2010 um 16:27 Uhr).
Shakademus ist offline   Mit Zitat antworten
Alt 30.01.2010, 20:22   #3
gruena
Registered User

 
Registriert seit: Sep 2008
Karma: 44 gruena liegt in der Wertung
Re: [CSS]Anfänge mit CSS - Positionierung und Breite

PHP-Code:
<script>

    
//
    // example: displayOptionWindow("yes");
    //

    
function displayOptionWindow(state)
    {
        
win document.getElementById("optionwindow");

        if (
state == "yes")
            
win.style.display "block";

        if (
state == "no")
            
win.style.display "none";
    }

</script>

<style>

    *
    {
        margin: 0;
    }

    #header
    {
        border-bottom: 2px solid black;
        height: 20%;
    }

    // main = optionwindow + content

    #main
    {
        height: 350px;
    }

    #optionwindow
    {
        border-right: 2px solid black;
        width: 300px;
        height: 100%;
        float: left;
    }

    #content
    {
        float: left;
    }

    #footer
    {
        border-top: 2px solid black;
        height: 20%;
    }

    h3, ul, pre
    {
        margin: 14px;
    }

    input
    {
        width: 260px;
    }
</style>

<div id="header">
    <h3>Header...</h3>
    <ul>
        <li><input type="button" value="Menü anzeigen" 

onclick="displayOptionWindow('yes');"></li>
        <li><input type="button" value="Menü ausblenden" 

onclick="displayOptionWindow('no');"></li>
    </ul>
</div>

<div id="main">
    <div id="optionwindow"><ul><li>bla<li>bli<li>blubb</ul></div>
    <div id="content"><pre>*schnarch*</pre></div>
</div>

<div id="footer"><h3>Footer...</h3></div> 
Sogar dynamisch. ^^
gruena ist offline   Mit Zitat antworten
Alt 31.01.2010, 17:35   #4
PadreJohn
Rodnox' Leibeigener

 
Registriert seit: Jan 2001
Karma: 267 PadreJohn ist eine Bereicherung fuer die Gemeinschaft.
Re: [CSS]Anfänge mit CSS - Positionierung und Breite

Wenn ich das richtig sehe, liegt es also an der Angabe width: 100% ...

Danke fürs Beispiel gruena, so hatte ich mir das auch gedacht.

Wobei ich dem footer noch clear: both; zugefügt hätte, damit der dann auch unten ist
__________________
'Niedergang beginnt mit dem Sieg' Günter Grass

"Wir sind die Kegler.
Und wir selbst sind die Kugel.
Aber wir sind auch die Kegel, die stürzen.
Die Kegelbahn, auf der es donnert, ist unser Herz."
Wolfgang Borchert
________________________________________________
Ich prostituier mich für Rodnox!
PadreJohn ist offline   Mit Zitat antworten
Alt 31.01.2010, 17:40   #5
Shakademus
Member

 
Registriert seit: May 2004
Karma: 831 Shakademus ist eine Bereicherung fuer die Gemeinschaft.
Re: [CSS]Anfänge mit CSS - Positionierung und Breite

Zitat:
Zitat von PadreJohn Beitrag anzeigen
Wenn ich das richtig sehe, liegt es also an der Angabe width: 100% ...
Nein. mainwindow kann sich gar nicht an optionwindow anschmiegen, da es durch die absolute Positionierung andere Elemente überhaupt nicht "sieht".
Wenn Du es hingegen nicht absolut positionierst, dann sorgt das width:100% dafür, dass es keinen Platz mehr neben optionwindow hat und nach unten wandert.
Shakademus ist offline   Mit Zitat antworten
Alt 31.01.2010, 22:29   #6
gruena
Registered User

 
Registriert seit: Sep 2008
Karma: 44 gruena liegt in der Wertung
Re: [CSS]Anfänge mit CSS - Positionierung und Breite

Zitat:
Zitat von PadreJohn Beitrag anzeigen
Wobei ich dem footer noch clear: both; zugefügt hätte, damit der dann auch unten ist
Während der gesamten Erstellungsphase hat sich #footer niemals dem Fluss hingegeben, und jetzt lade ich es testeshalber nochmal, und siehe da: er ist direkt neben #content. Ich glaube in meim Firefox 3.6 spukt es...
gruena ist offline   Mit Zitat antworten
Alt 01.02.2010, 13:13   #7
Shakademus
Member

 
Registriert seit: May 2004
Karma: 831 Shakademus ist eine Bereicherung fuer die Gemeinschaft.
Re: [CSS]Anfänge mit CSS - Positionierung und Breite

Sitz gerade an einem entfernt verwandten Problem, da kommt mir die CSS-Lösung in den Sinn: Tabellen-Style.

Code:
<div style="width:700px; top:125px; position:fixed;display:table;">
<div style="height: 375px; width: 150px; border: 1px solid brown;display:table-cell;">
Optionales Men&uuml;
</div>
<div style="height: 375px; border: 1px solid lime; text-align: center;display:table-cell;">
Hauptfenster
</div>
</div>
Wenn Du jetzt das "Menü" raus nimmst, breitet sich das Hauptfenster entspannt aus.
Shakademus ist offline   Mit Zitat antworten
Alt 07.02.2010, 02:01   #8
dirdi
Registered User

 
Registriert seit: Jul 2003
Karma: 33 dirdi liegt in der Wertung
Re: [CSS]Anfänge mit CSS - Positionierung und Breite

Zitat:
Sitz gerade an einem entfernt verwandten Problem, da kommt mir die CSS-Lösung in den Sinn: Tabellen-Style.
Dabei sollte man eventl. erwähnen, dass der IE zumindest bis Version 7 einschließlich damit noch nix anfangen kann.

@PadreJohn:
Zum Nachschlagen von CSS Eigenschaften kann ich dir http://www.css4you.de empfehlen. Da ist bei den ganzen Eigenschaften auch immer angegeben, welcher Browser ab welcher Version diese unterstützt.
__________________
thx 4 reading
dirdi ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge anzufügen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[CSS]Schrift-Positionierung shuhn Web Development 3 25.08.2005 11:57
Positionierung des Cursors BLOWFISH C / C++ 10 27.12.2003 10:23
<div> positionierung unter NS NightShark Web Development 4 18.07.2002 01:17
Seiten Breite Boxi Web Development 6 22.08.2001 15:40
Eure Anfänge damals ?? int_030h Technisches Off-Topic 37 11.07.2001 18:44


Alle Zeitangaben in WEZ +2. Es ist jetzt 04:09 Uhr.


[BuHa Edition]

Partnerboard:
mcseboard.de