Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CSS] problem z wyświetleniem całego tekstu na stronie
Forum PHP.pl > Forum > Przedszkole
iteru
Witam.
Mam taki kod:
html:
  1. <div id="middle">
  2. <div id="main">
  3.  
  4. <table class="content">
  5. <tr>
  6. <td class="contentheading" width="100%">
  7. Programy</td>
  8. </tr>
  9.  
  10. <table class="content">
  11. <tr>
  12. <td valign="top">
  13. <p style="text-align: justify;">Program ..... </p>

........
CSS :
  1. #content {
  2. width: 845px;
  3. margin: 0 auto;
  4. padding: 0 10px 0 10px;
  5. background-color: #f3f8fb;
  6. height: 100%;
  7. }

tekst umieszczony w content na niektórych pod stronach jest za długi i się nie wyświetla. Przy zmianie height na 250% wyświetla się cały tekst ale taka sama długość pozostaje na pozostałych stronach gdzie tekst jest o wiele krótszy, przez co beznadziejnie to wygląda a do tego obrazek w tle w body mi się rozciągnął.
Próbowałem jeszcze Overflow:scroll, ale w ogóle mi to tutaj nie działa.

Co mogę z tym zrobić, żeby w tym przypadku strona dostosowywała się do teksu prawidłowo?
Turson
  1. #content {
  2. width: 845px;
  3. margin: 0 auto;
  4. padding: 0 10px 0 10px;
  5. background-color: #f3f8fb;
  6. overflow:hidden;
  7. height:auto;
  8. }
iteru
'auto' też nie działa. już próbowałem wcześniej.
1jackpot1
Do klasy odnosi się chyba kropką nie haszem, powinno być .content{} a nie #content{}. Nie działa tylko stylizacja wysokości czy reszta też?
Kshyhoo
ZASADA:
  1. .class
  2. #id
shpaque
overflow masz hidden - więc ukrywa wszystko co większe niż box w którym wyświetla. daj overflow na auto i będzie rozciągał...
Turson
shpaque, nie do końca. Overflow:hidden także rozciąga diva dopasowując do zawartości. Myślę, że problem leżał po prostu w #content zamiast .content
iteru
"." przed content sprawiła tylko, że zniknął nadany styl. overflow:auto tez nic nie daje. jedyne co działa to zmiana height z 100% (lub auto) na np. 250% ale wtedy rozciąga też obrazek w tle całej strony. wszystko inne generalnie działa poza tym dostosowaniem wielkości strony do długości tekstu.
Turson
Powiedz nam tylko gdzie konkretnie wsadzasz ten tekst, który rzekomo się nie mieści. Mam nadzieję, że tabelka nie służy Ci do budowy strony a jedynie prezentacji danych...
shpaque
może zamiast table daj div
iteru
zamiana table na div nic nie daje.

wklejałem kod...mogę jeszcze raz obszerniej.
  1. <div id="container">
  2.  
  3. <div id="navigation">
  4. <div class="moduletable_menuglowne">
  5. <ul class="menu sf-menu sf-horizontal">......TU JEST MENU.....
  6. </div><!-- navigation -->
  7.  
  8. <div id="medium">
  9.  
  10. <div id="content_top">
  11.  
  12. <img src="bg_content_top.png" />
  13.  
  14. </div><!-- content_top -->
  15.  
  16. <div id="content">
  17. <div id="left">
  18. <div class="moduletable_menu_lewe">
  19. <h3>PROGRAMY</h3>
  20. <ul class="menu"> TU JEST DODATKOWE MENU BOCZNE Z LEWEJ STRONY</ul> </div>
  21.  
  22. <div class="moduletable">
  23.  
  24. <script type="text/javascript">
  25. _uacct ="UA-711712-1";
  26. urchinTracker();
  27. </div>
  28.  
  29. </div><!-- left -->
  30.  
  31. <div id="middle">
  32. <div id="main">
  33.  
  34. <table class="content">
  35. <tr>
  36. <td class="contentheading" width="100%">
  37. PROGRAMY </td>
  38.  
  39.  
  40. </tr>
  41.  
  42. <table class="content">
  43. <tr>
  44. <td valign="top">
  45. <p style="text-align: justify;"> ....TU JEST TEKST KTÓRY SIĘ NIE MIEŚCI </p>
  46.  
  47. </td>
  48. </tr>
  49.  
  50.  
  51.  
  52. </div>
  53.  
  54. </div><!-- middle -->
  55. </div><!-- content -->
  56. </div><!-- medium -->
  57.  
  58.  
  59. </div><!-- container -->
  60.  
  61. </body>

teoretycznie powinno chyba działać, ale nie działa.
Kshyhoo
Spróbuj użyć:
  1. overflow: auto;
  2. word-wrap: break-word;
  3. white-space: pre-wrap;
iteru
tekst się przesunął w dół. strona się trochę rozciągnęła w dół ale treść strony nadal znika w tym samym miejscu co znikała.
Kshyhoo
Użyj jsfiddle.net, bo skąd mamy wiedzieć, co cudujesz. Wklej kod i zapodaj linka.
iteru
http://jsfiddle.net/#&togetherjs=pCNpyKQh6w

tutaj to działa. u mnie nie.
Kshyhoo
U mnie nie działa. Sygnalizuje sporo nie podomykanych znaczników za to...

No dobra. Twoim problemem jest nadanie na sztywno dla DIV:
  1. #main {
  2. height: 100%;
  3. }

Spróbuj zmienić to, chociażby na:
  1. #main {
  2. height: 100% auto;
  3. }

Albo np:
  1. #main {
  2. height: auto;
  3. min-height: 600px; // dla minimalnej wysokości w przypadku małej ilości tekstu
  4. }
registropl
@iteru:
z jakiego edytora korzystasz?
Zainstaluj sobie SublimeText do HTML i CSS idealnie się nadaje, a jeśli "zapomni Ci się" zamknąć znacznik, to sublime da Ci o tym znać lub zamknie go za ciebie.

Rozumiem, że chcesz osiągnąć przyklejoną stopkę - masz na to dwa proste sposoby:
Css: css

Js:
Kod
$(window).bind("load", function() {
      
       var footerHeight = 0,
           footerTop = 0,
           $footer = $("#footer");
          
       positionFooter();
      
       function positionFooter() {
      
                footerHeight = $footer.height();
                footerTop = ($(window).scrollTop()+$(window).height()-footerHeight)+"px";
      
               if ( ($(document.body).height()+footerHeight) < $(window).height()) {
                   $footer.css({
                        position: "absolute"
                   }).animate({
                        top: footerTop
                   },-1)
               } else {
                   $footer.css({
                        position: "static"
                   })
               }
              
       }

       $(window)
               .scroll(positionFooter)
               .resize(positionFooter)
              
});



Pozdrawiam,
r
iteru
dzięki Kshyhoo

#main {
height: auto; działa.
iteru
za szybko się ucieszyłem.

w starszych wersjach IE min-height nie działa. strona robi mi się wielkości najkrótszego tekstu. wiesz Kshyhoo co można z tym zrobić?
Kshyhoo
Cytat(iteru @ 10.02.2014, 23:20:56 ) *
w starszych wersjach IE min-height nie działa. strona robi mi się wielkości najkrótszego tekstu. wiesz Kshyhoo co można z tym zrobić?

Jak to jest z samodzielnością? Wystarczy wpisać w Google frazę "min-height ie" a dostaniesz odpowiedź... Na tym Forum obowiązuje kilka niepisanych zasad:
1. Jesteś zbyt leniwy, żeby się zarejestrować - my jesteśmy zbyt leniwi, żeby ci pomoc.
2. Pracujesz samodzielnie i osiągasz jakieś wyniki - my pomagamy ci poprawić te wyniki. Nie pracujesz samodzielnie - my za ciebie nic nie zrobimy.
iteru
aż tak leniwy nie jestem. akurat szukałem w googlach rozwiązania, ale

min-height:300px;
height:auto !important;
height:300px;

mi nie zadziałało. stąd było moje pytanie. ale faktycznie bezsensu uznałem za oczywiste, że jak już tutaj piszę to znaczy, że google zawiodło i mogłem o tym wspomnieć.

a podany wyżej sposób jednak działa - nie ładował mi się oddzielny arkusz stylu dla ie, stąd był problem

1. Jesteś zbyt leniwy, żeby się zarejestrować - my jesteśmy zbyt leniwi, żeby ci pomoc. ->akurat jestem zarejestrowany, ale korzystam tak sporadycznie, że nie pamiętam hasła, więc ręczne wpisanie loginu jest dla mnie szybsze.

dzięki.
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.