Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
2 kolumny w CSS - problem z wysokością
#1
Cześć,
mam problem z ustawieniem prawej kolumny. Chodzi mi o to, żeby wysokość div-a "content" była rozciągana do wysokości div-a "panels", jeśli "content" będzie niższy od tego drugiego. Poniżej fragmenty CSS-a i HTML-a:

Kod:
<div id="page">
    <div id="header">
        <div id="logo"></div>
        <div id="menu">
        </div>
    </div>
    <div id="main">
        <div id="main_line"></div>
        <div id="main_corner"></div>
        <div id="collumns">
            
            <div id="panels">
                <div id="panel"></div>
                <div id="panel_bricks_big"></div>
                <div id="panel"></div>
                <div id="panel_bricks_small"></div>
            </div>
            
            <div id="content">
                <!-- tu będzie div z tekstem -->
                <div id="content_bricks"></div>
                <div id="content_line"></div>
            </div>
            
        </div>
    </div>
    <div id="footer_top">
        <div id="footer_height"></div>
        <div id="footer_text">
        </div>
        <div id="copyright"></div>
    </div>
    <div id="footer_bottom"></div>
</div>

Kod:
html, body {
    background:    rgb(50,50,50) url(png/tlo.png) repeat;
    color:        #000;
    margin:        auto;
    padding:        0;
    color:        black;
    font:            15px Verdana, Helvetica, sans-serif;
}

#page{
    position:    static;
    margin:        0 auto;
    padding:        0;
    clear:        none;
    width:        900px;
    background:    transparent;
}

/* START HEADER */
#header{
    position:    static;
    margin:        0;
    padding:        0;
    clear:        none;
    width:        900px;
    height:        255px;
    background:    transparent url(png/naglowek.png) no-repeat;
}

#logo{
    /*position:    relative;
    top:    105px;
    left:    30px;**/
    position:    absolute;
    padding:    0;
    margin:    105px 0 0 30px;
    width:    459px;
    height:    84px;
    background:    transparent url(png/logo.png) no-repeat;
}

#menu{
    position:    absolute;
    margin:        231px 0 0 0;
    padding:        0;
    height:        26px;/*24+2*/    
}
/* END HEADER */

/* START MAIN */
#main{
    position:    static;
    margin:        0;
    padding:        22px 12px 7px 4px;
    clear:        both;
    float:        left;
    width:        884px;
    /*height:        auto;*/
    background:    rgb(39,39,39) url(png/main_fade.png) repeat-x top;
}

#main_line{
    position:    static;
    margin:        -22px 0 0 -4px;
    padding:        0;
    clear:        left;
    float:        left;
    width:        852px;
    height:        2px;
    background:    rgb(39,39,39) url(png/main_line.png) no-repeat top;
}

#main_corner{
    position:    static;
    margin:        -22px -12px 0 0;
    padding:        0;
    clear:        right;
    float:        right;
    width:        48px;
    height:        48px;
    background:    rgb(39,39,39) url(png/main_corner.png) no-repeat top;
}
/* END MAIN */

/* START COLLUMNS */
#collumns{
    position:    static;
    margin:        -26px 0 0 0;
    padding:        0;
    clear:        none;
    float:        left;
    width:        884px;
    /*height:        auto;*/
    background:    transparent;
}
/* END COLLUMNS */

/* START PANEL */
#panels{
    position:    static;
    margin:        0 4px 0 0;
    padding:        0;
    clear:        left;
    float:        left;
    width:        180px;
    /*height:        auto;*/
}
#panel{
    /*position:    static;*/
    margin:        0;
    /*padding:        0;*/
    clear:        both;
/*    float:        left;
    width:        180px;
    height:        auto;*/
    min-height:    30px;
    background:    rgb(23,23,23) url(png/panel_corner.png) no-repeat top right;
}

#panel_bricks_big{
    /*position:    static;*/
    margin:        0;
    /*padding:        0;*/
    clear:        both;
    /*float:        left;*/
    width:        35px;
    height:        35px;
    background:    rgb(39,39,39) url(png/panel_bricks_big.png) no-repeat left;
}

#panel_bricks_small{
    /*position:    static;*/
    margin:        0;
    /*padding:        0;*/
    clear:        both;
    /*float:        left;*/
    width:        35px;
    height:        21px;
    background:    rgb(39,39,39) url(png/panel_bricks_small.png) no-repeat left;
}
/* END PANEL */

/* START CONTENT */
#content{
    position:    static;
    margin:        0 0 0 8px;
    padding:        0;
    clear:        none;
    float:        right;
    width:        692px;
    /*height:        auto;*/
    min-height:    48px;
    background:    rgb(23,23,23) url(png/matter_corner.png) no-repeat right top;
}
#content_bricks{
    position:    static;
    margin:        13px 0 0 0;
    padding:        0;
    clear:        left;
    float:        left;
    width:        35px;
    height:        35px;
    background:    rgb(23,23,23) url(png/matter_bricks.png) no-repeat left bottom;
}
#content_line{
    position:    static;
    margin:        0;
    padding:        0;
    clear:        both;
    float:        left;
    width:        692px;
    height:        2px;
    background:    rgb(23,23,23) url(png/matter_line.png) no-repeat left;
}
/* END CONTENT */

/* START FOOTER */
#footer_top{
    position:    static;
    margin:        2px 0 0 0;
    padding:        0;
    clear:        both;
    float:        left;
    width:        900px;
    height:        auto;
    background:    rgb(39,39,39) url(png/stopka_klocki_g.png) no-repeat left bottom;
}
#footer_height{
    position:    static;
    margin:        0;
    padding:        0;
    clear:        right;
    float:        right;
    width:        12px;
    height:        37px;
    background:    transparent;
}
#footer_text{
    position:    static;
    margin:        0;
    padding:        0;
    clear:        left;
    float:        left;
    background:    transparent;
}
#footer_bottom{
    position:    static;
    margin:        0 0 20px 0;
    padding:        0;
    clear:        both;
    float:        left;
    width:        888px;
    height:        12px;
    background:    rgb(39,39,39) url(png/stopka_klocki_d.png) no-repeat left bottom;
}
/* END FOOTER */

/* START COPYRIGHT */
#copyright{
    position:    static;
    margin:        auto 0 0 0;
    float:        right;
    min-height:        21px;
}
/* END COPYRIGHT */
Odpowiedz
#2
http://3d.hmax.pl/php/css3/2/
chodzi o takie coś ?
Odpowiedz
#3
chyba tylko javascript
Odpowiedz
#4
Display table-cell albo zmienić podejscie na nowe standardy Smile
Odpowiedz
#5
Nie udało mi się. Zostawiłem tak jak jest. Strona miała być napisana w HTML-u i CSS-ie, więc może kiedyś będzie jakieś przejście na nowsze techniki.
Odpowiedz
#6
display:table-cell to jest css właśnie
a pisząc nowe standardy kartofelek miał na myśli css3(chyba)
Odpowiedz
#7
dałem wcześniej display:table-cell w panels i content i nic się nie zmieniło.
Odpowiedz
#8
Dzisiejsze layouty po prostu nie korzystają z tej techniki. Teraz robi się layouty poza takimi rzeczami.

Możesz zrobić tak:
http://matthewjamestaylor.com/blog/equal-height-columns-2-column.htm

Poza tym w css definiują niby flexowe wyświetlanie (które pewnie będzie przyszłością) ale póki co to jest to śmietnik nie z tej ziemi. Miejmy nadzieję że szybko się to poprawi.
Możesz spróbować też rozwiązania js: http://flexiejs.com/ lub "jquery equal height" które jest banalne w implementacji a daje więcej możliwości od czystego css.

A co do table cell:
http://css-tricks.com/fluid-width-equal-height-columns/

Tam masz przykład zastosowania wspomnianej metody.
Odpowiedz
#9
Na tej ostatniej stronie mam same prostokąciki zamiast tekstu. Pokombinuję z tym później, bo mam bardziej naglący problem.

Chcę zrobić drugi poziom menu w którym będzie następowała zmiana koloru <li> na inny po najechaniu i kliknięciu. (class="menuactive"). Poniżej kod i screen z tego co osiągnąłem. <span> ma nadaną szerokość 150px, ale jakoś tego nie widać. Gdzie jest błąd i jak go naprawić?

HTML:
Kod:
<div id="menuwrapper">
<ul id="primary-nav">
  <li>
  <a
href="http://testing.thumpers.pl/cmsms/"><span>strona główna</span></a>
</li>
  <li><a ><span class="sectionheader">motocykle</span></a>
  <ul class="unli">
  <li>
  <a
href="http://testing.thumpers.pl/cmsms/index.php?page=motocykle-honda"><span>honda</span></a>
</li>
  <li>
  <a
href="http://testing.thumpers.pl/cmsms/index.php?page=motocykle-yamaha"><span>Yamaha</span></a>
</li>
  <li>
  <a
href="http://testing.thumpers.pl/cmsms/index.php?page=kawasaki"><span>Kawasaki</span></a>
  </li><li class="separator once" style="list-style-type: none;">&nbsp;</li></ul>
  </li>
                          <li class="menuactive menuparent parent"><a class="menuactive menuparent parent"><span class="sectionheader">Skutery</span></a>
    <ul class="unli">
            <li class="menuactive"><a class="menuactive"
  href="http://testing.thumpers.pl/cmsms/index.php?page=skut-honda"><span>Honda</span></a>
  </li><li class="separator once" style="list-style-type: none;">&nbsp;</li></ul>
  </li>
    <li>
  <a
href="http://testing.thumpers.pl/cmsms/index.php?page=o-nas"><span>O nas</span></a>
</li>
  <li>
  <a
href="http://testing.thumpers.pl/cmsms/index.php?page=kontakt"><span>Kontakt</span></a>

</li>
</ul>
<div class="clearb"></div>
</div>

CSS:
Kod:
ul, ul li {
    display: block;
    list-style: none;
    margin: 0;
    padding: 0;
}

/* START LEVEL 0 */
#menuwrapper ul {
    float: left;
    width: 100%;
    height: 24px;
}

#menuwrapper ul li {
    float: left;
    height: 24px;
    margin-right: 3px;
}
#menuwrapper ul li {
    background: url("[[root_url]]/uploads/GoodMoto/main_menu_left.png") no-repeat left top;
}
#menuwrapper ul li:hover {
    background: url("[[root_url]]/uploads/GoodMoto/main_menu_hover_left.png") no-repeat left top;
}
#menuwrapper ul li.menuactive, #menuwrapper ul li.menuactive:hover {
    background: url("[[root_url]]/uploads/GoodMoto/main_menu_active_left.png") no-repeat left top;
}

#menuwrapper ul li a {
    font-size:    14px;
    color: rgb(92,119,86);
    text-decoration: none;
}
#menuwrapper ul.primary-nav li a, #menuwrapper ul.primary-nav li a:visited {
    display: block;
    height:    24px;
}

#menuwrapper ul li a span {
    margin-left:    15px;
}

#menuwrapper ul li a span, #menuwrapper ul li a:visited span {
    height:            24px;
    margin-left:    15px;
    padding:            0 20px 6px 5px;
}
#menuwrapper ul li a span, #menuwrapper ul li a:visited span {
    background:        url("[[root_url]]/uploads/GoodMoto/main_menu_right.png") no-repeat right top;
}
#menuwrapper ul li:hover a span {
    background: url("[[root_url]]/uploads/GoodMoto/main_menu_hover_right.png") no-repeat right top;
}
#menuwrapper ul li.menuactive a span, #menuwrapper ul li.menuactive:hover a span, #menuwrapper ul li.menuactive a:visited span, #menuwrapper ul li.menuactive:hover a:visited span {
    background: url("[[root_url]]/uploads/GoodMoto/main_menu_active_right.png") no-repeat right top;
    color: rgb(25,25,25);
}

#menuwrapper li.separator {
    display:    none;
}
/* END LEVEL 0 */

/* START LEVEL 1 */
/* BACKGROUND RESET */
#menuwrapper ul li ul li, #menuwrapper ul li.menuactive ul li, #menuwrapper ul li:hover ul li, #menuwrapper ul li.menuactive:hover ul li,
#menuwrapper ul li ul li a span, #menuwrapper ul li ul li a:visited span,
#menuwrapper ul li:hover ul li a span, #menuwrapper ul li:hover ul li a:visited span,
#menuwrapper ul li.menuactive ul li a span, #menuwrapper ul li.menuactive ul li a:visited span,
#menuwrapper ul li.menuactive:hover ul li a span, #menuwrapper ul li.menuactive:hover ul li a:visited span {
    background:    none;
}

#menuwrapper ul li ul {
    position:    absolute;
    width:        auto;
    height:        auto;
    margin:            6px 0 0 0;
    padding:            0;
    background-color:    yellow;
}

#menuwrapper ul li ul li, #menuwrapper ul li.menuactive ul li,
#menuwrapper ul li:hover ul li, #menuwrapper ul li.menuactive:hover ul li {
    float:        left;
    clear:        both;
    width:        auto;
    margin:            0;
    padding:            0;
    background-color:    red;
}

#menuwrapper ul li ul li a {
    margin:            0;
    padding:            0;
}

#menuwrapper ul li ul li a span, #menuwrapper ul li ul li a:visited span,#menuwrapper ul li ul li a:hover span {
    margin:            0;
    padding:            0;
    width:            150px;
}


Załączone pliki
.png   strona.png (Rozmiar: 41.14 KB / Pobrań: 1)
Odpowiedz


Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Dodanie 1 wartości do kolumny Intelactive 2 2,600 20-10-2012, 20:40
Ostatni post: Intelactive
  [CSS] [PHP?] IE sypie layout (kolumny w jquery) [wordpress] pwlj 0 1,867 09-03-2012, 15:31
Ostatni post: pwlj
  Ustawienie drugiej kolumny w wordpress Filuper112 3 3,290 26-11-2011, 01:04
Ostatni post: Raalsky
  Jak usunąć podział na kolumny Efflerek 1 2,843 05-07-2011, 23:06
Ostatni post: Kartofelek
  dwa problemy: obramowanie kolumny tabeli i obszar dokumentu pawmar 14 9,160 15-01-2011, 00:17
Ostatni post: Ancik

Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości
Sponsorzy i przyjaciele
SeoHost.pl