Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Sidebar tak długi jak content
Forum PHP.pl > Forum > Po stronie przeglądarki
jacked
Cześć, mam problem, z którym nie mogę się uporać... robię szablon dla wordpress-a. Mam content, który się rozszerza gdy dochodzą nowe posty. Jednak gdy content się rozszerzy, sidebar nie, i powstaje nieładna dziura.
Chciałem rozwiązać problem za pomocą jquery, nadając sidebarowi wysokość contentu(zmieniając style CSS przez jquery). Założyłem więc temat z pytanie jak pobrać i przypisać długość contentu sidebarowi, ale nie nie odpowiedział... może jest jakiś inny sposób na rozwiązanie problemu?
sunpietro
Skorzystaj z tego linka: css równa wysokość kolumn
Nie ma najmniejszej potrzeby korzystania z jquery.
erix
Najlepiej zrobić via display: table-cell, bez kombinowania. [;
jacked
Pierwszy sposób Sunpietro, niestety nie działa - spowodowane jest to pewnie tym, ze layout jest bardziej złożony, i gdy stosuje style CSS z tego tutoriala wszystko się rozwala, sidebar jest nad contentem, w dodatku po złej stronie...

erix, ustawienie table-cell też nic nie daje... ustawiłem tę właściwość dla sidebaru(tak miało być), no ale niestety nic...
eccocce
Cytat(sunpietro @ 9.08.2011, 13:31:53 ) *
Skorzystaj z tego linka: css równa wysokość kolumn

Te kolumny nie są tak naprawdę równe, tylko border tej z lewej robi za tło prawej. Sprytne, ale to jednak rozwiązanie niezbyt elastyczne... Nie da się takiego efektu uzyskać stosując po prostu height 100% / auto?
erix
Cytat
erix, ustawienie table-cell też nic nie daje... ustawiłem tę właściwość dla sidebaru(tak miało być), no ale niestety nic...

Bo to tylko jedna z rzeczy, które trzeba wykonać. Poguglaj o tym, będziesz wiedział, co dalej.

Myślisz, że gotowca dostaniesz...?
Rid
Cytat
Najlepiej zrobić via display: table-cell, bez kombinowania.
-Nie najlepiej,ale może najłatwiej.
Display:table nie obsługuje-IE6,IE7,IE8 dopiero od IE9 pr3 zaczyna,się obsługa tej właściwości.
http://www.quirksmode.org/css/display.html
erix
Rozpędziłeś się chyba z tymi wersjami. [;

Dla IE6/7 piszesz expression, co rozciąga; reszta tego nie wymaga. Było na PerfectionOrVanity i jestem absolutnie za takim rozwiązaniem.
jacked
Nie chcę żadnego gotowca, tylko pomoc. Oczywiście, że szukałem w google, ale nic konkretnego nie znalazłem, a jak coś było to to u mnie nie działało, dlatego pomyślałem od tak radykalnych rzeczach jak Jquery. Z problemem męczę się ponad tydzień więc to już odpowiednia pora na założenie tematu smile.gif

Dam kod dla jasności, aside to sidebar.
Kod
aside {
    background-color: #e3e3e3;
    color: #5B5A5A;
    text-decoration:none;
    float:right;
    margin-bottom: 20px;
    width:310px;
    display:table-cell;
    height:100%;
}

content {
    width: 960px;
    float: left;
    display: block;
    margin-top: 20px;
}

#main-content {
    float: left;
    width: 620px;
    background-color: #ebebeb;
    display: block;
    padding-right: 15px;
    padding-left: 15px;
    background-image: url(images/colorLine.png);
    background-repeat: repeat-y;
    background-position: right;
    padding-top: 15px;
}


W html wygląda to tak w uproszczeniu:

Kod
<content>

           <div id="main-content">

           </div>

          <aside>

          </aside>

</content>


Czyli w content jest główny content, który ma w sobie jeszcze posty(tego nie napisałem w powyższym kodzie), ale w conent znajduje się też sidebar.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.