Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: (DIV,CSS)
Forum PHP.pl > Forum > Po stronie przeglądarki > HTML \ XHTML
Spriter
Witam mam problem z "rozciąganiem" obrazka w divie. Mam strone w układzie 3-kolumnowym.Lewa strona-menu, środek- treść, prawa - jakieś opcjonalne rzeczy. Chciałbym żeby w miare przybywania treści w środkowej kolumnie obrazek (lub tło) lewej i prawej kolumny wydłużał się. W tym temacie http://forum.php.pl/index.php?showtopic=191949 zauważyłem ciekawe rozwiązanie, niestety obrazek wydłużył się i przeciął stopkę strony. Po lewej i prawej stronie tłem nie musi być obrazek bo może być normalny kolor,bo obrazek to zwykły prostokąt w określonym kolorze, ale to też próbowałem i też bezskutecznie. Tak wyglądają divy:
  1. <div id="main">
  2. <div id="header"><img src="templates/tenisowo2/images/logo.png"></div>
  3. <div id="menu">
  4. </div>
  5. <div id="middle">
  6. <div id="left"></div>
  7. <div id="cent">
  8. </div>
  9. <div id="right">
  10. </div>
  11. </div>
  12. <div id="footer">
  13. </div>
  14. </div>


a tak szablon css

  1. A:link, A:visited { text-decoration: none; color:#000000 }
  2. A:hover { text-decoration: underline; text-shadow: ff9900; animation:cubic-bezier() }
  3. body {
  4. margin: 0;
  5. padding: 0;
  6. font: 14px Arial, Helvetica, sans-serif;
  7. text-align: center;
  8. color: #000000;
  9. background: #ffff99;
  10. }
  11. p {
  12. margin: 0;
  13. padding: 0;
  14. text-align: justify;;
  15. border:none;
  16. margin-left:auto;
  17. }
  18. p_menu {
  19. text-shadow:ff9900;
  20. text-emphasis:before;
  21. text-align:center;
  22. font-size:16px;
  23. font:Arial, Helvetica, sans-serif;
  24. }
  25.  
  26. #main {
  27. margin: 0 auto;
  28. padding: 0;
  29. width: 980px;
  30. text-align: left;
  31. font-size: 14px;
  32. }
  33. #header {
  34. height: 150px;
  35. width:980px;
  36. }
  37. #menu {
  38. height: 55px;
  39. text-align:center;
  40. background-image:url(../images/menu.png)
  41. }
  42. middle {
  43. background-color: #ffcc00; padding-bottom:10000px;
  44. margin-bottom:-10000px;
  45. }
  46. #left {
  47. text-align:left;
  48. line-height:35px;
  49. float: left;
  50. width: 149px;
  51. background-image:url(../images/left.png);
  52. padding-bottom:0px;
  53. }
  54. ul{
  55. margin-left:15px;
  56. padding:0;
  57. }
  58. #cent {
  59. float: left;
  60. width: 680px;
  61. padding: 0 10px 0 10px;
  62. height:100%;
  63. }
  64. #right {
  65. text-align:center;
  66. line-height:35px;
  67. float: right;
  68. width: 130px;
  69. background-image:url(../images/right.png);
  70. padding-bottom:0px;
  71. }
  72. #footer {
  73. clear: both;
  74. height: 90px;
  75. line-height: 15px;
  76. text-align: left;
  77. padding: 0;
  78. width: 980px;
  79. background-image:url(../images/footer.png)
  80. }



Wszystkie polecenia typu background-repeat: repeat z innymi opcjami nie pomagają. Na stronie po prostu w lewej i prawej kolumnie obrazek wydłuża się tylko do treści zawartej w danej kolumnie. Proszę o pomoc


lukesh
Cytat(Spriter @ 28.02.2012, 16:47:22 ) *
Wszystkie polecenia typu background-repeat: repeat z innymi opcjami nie pomagają. Na stronie po prostu w lewej i prawej kolumnie obrazek wydłuża się tylko do treści zawartej w danej kolumnie.


Dzieje się tak, ponieważ lewa, środkowa i prawa kolumna nie wydłużają się równomiernie. To nie jest tabela, gdzie wszystkie kolumny mają taką samą wysokość.
Jednym rozwiązaniem może być ustawienie trzech obrazków jako tło dla div#middle i wtedy wszystko Ci się będzie rozciągać tak, jak chcesz.
Musisz tylko ustawić odpowiednią pozycję dla każdego z obrazków.
Druga opcja - możesz skorzystać z JS i zmieniać wysokość poszczególnych divów, kiedy wysokość jednego z nich powiększy się.
Pierwsze rozwiązanie jest ciekawe, ale w IE działa tylko od wersji 9.0.
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.