login  Naam:   Wachtwoord: 
Registreer je!
 Forum

menu div zelfde hoogte maken (Opgelost)

Offline mrnico - 15/09/2015 20:53
Avatar van mrnicoNieuw lid Hallo ik heb een probleem

heb een opzet gemaakt voor een website alleen nu zit ik met een uitdaging

ik wil het Menu DIV even hoog maken als de INDEX DIV

aangezien de Index div geen vaste hoogte houd vind ik het een beetje rommelig lijken als het menu langer of koter is


  1. <!doctype html>
  2. <meta charset="utf-8">
  3. <META NAME="Identifier-URL" CONTENT="http://www.modestudioopmaat.nl">
  4. <meta name="robots" content="index, follow" />
  5. <META NAME="DESCRIPTION" CONTENT="text">
  6. <meta http-equiv="content-language" content="nl" />
  7. <meta http-equiv="expires" content="0" />
  8. <meta name="keywords" content="keywoorden" />
  9.  
  10. <title>Home | Modestudio op maat</title>
  11.  
  12. <link rel="shortcut icon" type="image/x-icon" href="afbeeldingen/icons/transperant kzc.png" />
  13. <link rel="stylesheet" href="css/styles.css" type="text/css" media="screen"/>
  14. <link rel="stylesheet" href="css/lightbox.css"/>
  15. <link rel="stylesheet" type="text/css" href="css/afbeeldingswissel.css">
  16. <script type="text/javascript" src="js/lightbox.js"></script>
  17. <script type="text/javascript" src="js/afbeeldingswissel.js"></script>
  18.  
  19.  
  20.  
  21.  
  22. </head>
  23.  
  24.  
  25. <div id="Wrapper">
  26.  
  27.  
  28.  
  29.  
  30. <div id="divContent">
  31.  
  32.  
  33.  
  34. <div id="banner">
  35. <h1>Modestudio "Op Maat"</h1>
  36.  
  37.  
  38. </div>
  39.  
  40. <div id="tussen">
  41.  
  42. <p> </p>
  43.  
  44. </div>
  45.  
  46. <div id="menu">
  47.  
  48. <div id="MenuLinks">
  49. <ul>
  50. <li><a href="index.html">Home</a></li>
  51. <li><a href="Resume.html">Maatwerk</a></li>
  52. <li><a href="Resume.html">Reparatie</a></li>
  53. <li><a href="Portfolio.html">Cursus</a></li>
  54. <li><a href="contact.html">contact</a></li>
  55. </ul>
  56. </div>
  57. </div>
  58.  
  59.  
  60. <div id="normalepagina">
  61.  
  62. <!-- aanpassen vanaf hier -->
  63.  
  64. <div id="indextitel">
  65.  
  66.  
  67. <h1>Modestudio "Op Maat" voor maatkleding en reparaties.</h1>
  68. </div>
  69.  
  70.  
  71. <div id="index">
  72.  
  73. <img src="afbeeldingen/foto/imgB.jpg"/>
  74.  
  75. <p>Exclusief op maat<br/><br/>
  76. Herma werkt volgens de methode van het oude kleermakersvak.
  77. Dit doet ze met veel liefde en toewijding in haar eigen studio.
  78. Eerst volgt een intakegesprek waarbij de klant haar specifieke wensen kenbaar maakt omtrent het model.
  79. Daarbij geeft Herma zelf ook suggesties.
  80. Als de klant tevreden is over het model neemt ze volledig de maat van het lichaam op en maakt ze een proefmodel. Als deze perfect zit en aanvoelt als een tweede huid, dan pas word de stof uitgezocht.
  81. Eventueel naar behoefte met of zonder Herma's hulp.
  82. Het uiteindelijke resultaat is een exclusief kledingstuk volledig naar wensen op maat gemaakt.
  83. Vooral voor vrouwen die in de winkel niet kunnen slagen is dit de ideale oplossing.
  84.  
  85. </p>
  86.  
  87. </div>
  88.  
  89.  
  90.  
  91.  
  92. <!-- tot hier aanpassen -->
  93.  
  94. </div>
  95.  
  96.  
  97.  
  98.  
  99.  
  100. <div id="tussen">
  101.  
  102. <p> </p>
  103.  
  104. </div>
  105.  
  106. <div id="onder">
  107.  
  108.  
  109.  
  110. <div id="vooter">
  111. <p align="center"> <u>
  112. <p>mrnico © 2015 </p>
  113.  
  114.  
  115.  
  116. </div>
  117.  
  118. </div>
  119. </div>
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129. </body>
  130. </html>





  1. /* CSS Document */
  2.  
  3. html, body, div, span, applet, object, iframe,
  4. h1, h2, h3, h4, h5, h6, p, blockquote, pre,
  5. a, abbr, acronym, address, big, cite, code,
  6. del, dfn, em, img, ins, kbd, q, s, samp,
  7. small, strike, strong, sub, sup, tt, var,
  8. b, u, i, center,
  9. dl, dt, dd, ol, ul, li,
  10. fieldset, form, label, legend,
  11. table, caption, tbody, tfoot, thead, tr, th, td,
  12. article, aside, canvas, details, embed,
  13. figure, figcaption, footer, header, hgroup,
  14. menu, nav, output, ruby, section, summary,
  15. time, mark, audio, video, marquee {
  16. margin: 0;
  17. padding: 0;
  18. border: 0;
  19. font-size: 100%;
  20. font: inherit;
  21. vertical-align: baseline;
  22. font-family:"Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", "DejaVu Sans", Verdana, sans-serif;
  23. }
  24. /* HTML5 display-role reset for older browsers */
  25. article, aside, details, figcaption, figure,
  26. footer, header, hgroup, menu, nav, section {
  27. display: block;
  28. }
  29. body {
  30. line-height: 1;
  31.  
  32.  
  33. }
  34. ol, ul {
  35. list-style: none;
  36. }
  37. blockquote, q {
  38. quotes: none;
  39. }
  40. blockquote:before, blockquote:after,
  41. q:before, q:after {
  42. content: '';
  43. content: none;
  44. }
  45. table {
  46. border-collapse: collapse;
  47. border-spacing: 0;
  48. }
  49.  
  50. /* text */
  51. h1 {font-size:36px; color:#000000; }
  52. h2 {font-size:24px;}
  53. h3 {font-size:20px;}
  54. p {font-size:16px;}
  55. a {font-size:16px; text-decoration:none; color:black;}
  56.  
  57. body {background-image: url(../afbeeldingen/achtergrond/jeans.jpg);
  58. background-repeat:no-repeat;
  59. background-attachment: fixed;
  60. webkit-background-size: cover;
  61. -moz-background-size: cover;
  62. -o-background-size: cover;
  63. background-size: cover;}
  64.  
  65. /* opbouw pagina */
  66. #Wrapper { width: 100%;
  67. min-width: 20px;
  68. margin-top: 20px;}
  69.  
  70. #banner { height:150px;
  71. background-color:#FFFdc5;
  72. margin-bottom:20px;
  73. background-image:url(../afbeeldingen/logo/hematransparent.png) ;
  74. background-repeat:no-repeat;
  75. background-size:6%;
  76. background-position:2%;
  77. border-radius:10px;}
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84. #banner H1 { font-size:65px;
  85. font-family:"Gill Sans", "Gill Sans MT", "Myriad Pro", "DejaVu Sans Condensed", Helvetica, Arial, sans-serif;
  86. padding-top:35px;
  87. text-align:center;}
  88.  
  89.  
  90.  
  91.  
  92. #divContent { width: 90%;
  93. height: 90%;
  94. margin: 0 auto;}
  95.  
  96. #menu { float:left;
  97. width: 150px;
  98. overflow:hidden;
  99. height:inherit;
  100.  
  101.  
  102.  
  103. background:#FFFdc5;
  104. border-radius:10px;
  105.  
  106.  
  107.  
  108.  
  109. }
  110.  
  111.  
  112. #normalepagina { float:right;
  113. width: 85%;
  114. background:#FFFdc5;
  115.  
  116. border-radius:10px;}
  117.  
  118. #onder { clear:both;
  119. ;}
  120.  
  121.  
  122.  
  123. #tussen { clear:both;}
  124.  
  125.  
  126. #vooter { background-color:#FFFdc5;
  127. margin-top:20px;
  128. margin-bottom:20px;
  129. height:20px;
  130. border-radius:10px;
  131. }
  132.  
  133. #vooter p { text-align:center;
  134. font-size:10px;
  135. padding-top:2px;}
  136.  
  137. /* inhoud */
  138.  
  139. /* menu */
  140.  
  141. #MenuLinks { margin-top: 10px; margin-left: 10px; }
  142. #MenuLinks ul li { padding-top:30px;}
  143.  
  144.  
  145. /* index */
  146.  
  147. #indextitel { text-align:center;
  148. font-size:36px;
  149. margin-top:20px;}
  150.  
  151. #index { margin-top:50px;
  152. margin-left:20px;
  153. margin-right:20px;}
  154.  
  155. #index img { float: left;
  156. margin: 0.5em 1em 1em 0;
  157. clear: left; }



ik hoop dat jullie een oplossing hebben

5 antwoorden

Gesponsorde links
Offline Thomas - 15/09/2015 21:55 (laatste wijziging 15/09/2015 22:00)
Avatar van Thomas Moderator Beste,

Hier zijn een aantal truuks voor.

Wat eigenlijk nog veel belangrijker is, is een (syntactisch) kloppend HTML-document. Immers, als het HTML-document niet is opgesteld volgens de regels, kan simpelweg niet gegarandeerd worden dat deze correct wordt weergegeven.

Allereerst ontbreekt de body-openingstag.

Als ik mij niet vergis mist de Wrapper-div een sluitingstag.

Daarbij gebruik je het id "tussen" meerdere keren, wat eigenlijk niet is toegestaan - elk id mag maar één keer gebruikt worden binnen het HTML-document.

Ik zou je aanraden om (onwikkel)tools te installeren die je helpen bij het correct opzetten / controleren van je webpagina's en/of pagina's af een toe eens door een validator te halen.

Daarnaast helpt het ook enorm als je op de juiste manier "inspringt" in je HTML, dat maakt een en ander zoveel beter leesbaar...

---

Dan terug naar je oorspronkelijke probleem. Als ik dit menu zo zie, dan zal de content vaak langer zijn dan het menu, oftewel het menu zal in de meeste gevallen te kort zijn. Ik denk ook dat ik het probleem zie: als je een menu met afgeronde hoeken hebt, dan moet de onderkant van het menu boven de "vooter" geplakt worden. Je zou misschien iets kunnen doen met absoluut gepositioneerde elementen ofzo, maar dit druist een beetje in tegen het principe van een "dynamische" website denk ik. En wat nu als het menu overhoopt langer wordt dan de inhoud?

Het kan wel, maar het is alles behalve een handige oplossing. Ik zou je ontwerp toch herzien of met afbeeldingen voor header/footer werken.

Een pure HTML/CSS oplossing ziet er bijvoorbeeld als volgt uit, maar ik zou dus voor een andere aanpak gaan (EDIT: de spil in deze oplossing is dus een absoluut gepositioneerd element wat je aan de onderkant plakt van het element wat je content omvat):
  1. <!DOCTYPE html>
  2. <meta charset="UTF-8">
  3. <style type="text/css">
  4. div { margin: 0; padding: 0; border: 0; }
  5. /* zet hierin de achtergrondkleur van het menu */
  6. .container { width: 800px; margin: 0 auto; position: relative; background-color: #ffcccc; }
  7. /* geef het menu een padding bottom zodat menu niet achter menu-footer valt */
  8. .left { display: block; float: left; width: 200px; padding-bottom: 25px; }
  9. .right { display: block; float: left; width: 600px; background-color: #ccccff; }
  10. .clear { clear: both; }
  11.  
  12. /* deze div is enkel nodig voor het clearen van de bgcolor van het menu */
  13. .menuheader { width: 200px; height: 25px; background-color: #ffffff; }
  14. /* dit is voor de ronde randen van de bovenkant van het menu */
  15. .menuheader-inner { width: 100%; height: 100%; border-top-left-radius: 25px; border-top-right-radius: 25px; background-color: #ffcccc; }
  16.  
  17. /* deze div is enkel nodig voor het positioneren van de box en het clearen van de bgcolor van het menu */
  18. .menufooter { position: absolute; left: 0; bottom: 0; width: 200px; height: 25px; background-color: #ffffff; }
  19. /* dit is voor de ronde randen van de onderkant van het menu */
  20. .menufooter-inner { width: 100%; height: 100%; background-color: #ffcccc; border-bottom-left-radius: 25px; border-bottom-right-radius: 25px; }
  21. </head>
  22.  
  23. <div class="container">
  24. <div class="left">
  25. <div class="menuheader">
  26. <div class="menuheader-inner"><!-- niks --></div>
  27. </div>
  28. <ul>
  29. <li>een</li>
  30. <li>twee</li>
  31. <li>drie</li>
  32. </ul>
  33. </div>
  34. <div class="right">
  35. <!-- als deze inhoud te kort is zul je ook iets moeten verzinnen, -->
  36. <!-- veeg maar eens alles op 1 paragraaf na weg... -->
  37. <!-- als je paragrafen toevoegt rekt het menu mee -->
  38. <p>Bla bla bla bla bla bla bla bla</p>
  39. <p>Bla bla bla bla bla bla bla bla</p>
  40. <p>Bla bla bla bla bla bla bla bla</p>
  41. <p>Bla bla bla bla bla bla bla bla</p>
  42. </div>
  43. <div class="clear"><!-- clear --></div>
  44. <div class="menufooter">
  45. <div class="menufooter-inner"><!-- niks --></div>
  46. </div>
  47. </div>
  48. </body>
  49. </html>
Offline Jointjeff - 16/09/2015 10:18 (laatste wijziging 16/09/2015 10:18)
Avatar van Jointjeff HTML interesse Wat je ook zou kunnen doen is jQuery gebruiken, zie als voorbeeld:
https://jsfiddle.net/83yuhvou/

Je geeft dan een min-height mee aan zowel de linker als rechter column op basis van elkaars hoogte.

  1. $(document).ready(function() {
  2. $('.right').css({
  3. minHeight: $('.left').height()
  4. });
  5. $('.left').css({
  6. minHeight: $('.right').height()
  7. });
  8. });


Of het handig is iets dergelijks van Javascript te laten afhangen is maar de vraag, maar het werkt wel. Uiteindelijk is een pure HTML/CSS oplossing beter, maar dan zijn de oplossingen van FangorN denk ik het best haalbare.
Bedankt door: Thomas
Offline mrnico - 16/09/2015 11:30
Avatar van mrnico Nieuw lid bedankt voor de hulp ik zit nog met een probleem

de oplossing van FangorN kan ik geen lege tussen ruimte tussen het menu en de rechterpagina krijgen

en dat Java script van JointJeff heb ik geen idee hoe ik dat in mijn site moet plaatsen
Offline Thomas - 16/09/2015 19:55
Avatar van Thomas Moderator Mijn bovenstaande voorbeeld is slechts een voorbeeld; dit ontwerp is ook niet responsive (verandert niet mee afhankelijk van het apparaat (met specifieke schermafmetingen) waarmee je de site bekijkt). Het illustreert in grote lijnen wat er voor nodig is om voor elkaar te krijgen wat je probeert te bereiken.

Je zult waarschijnlijk wel om beide kolommen een soort van wrapper moeten zetten om ervoor te zorgen dat de achtergrondkleuren blijven kloppen. De oplossing van JointJeff is eigenlijk helemaal zo gek nog niet, in die zin dat dit niet extreem ingrijpt op het verdere ontwerp van de hoofd layout (maintemplate) van je website. Er moet vrij veel moeite gedaan worden enkel om een bepaald effect te bereiken. Ik denk dat het al een stuk simpeler wordt als je afbeeldingen gebruikt in plaats van border-radius.

Eigenlijk zit je al in zekere zin op een verkeerd spoor als je in een dynamische website iets met vaste hoogtes wilt gaan doen, dit zorgt onvermijdelijk voor problemen. De vraag is, wil je de moeite nemen om deze problemen te overwinnen, of kies je (toch) voor een flexibeler ontwerp.

Het valt waarschijnlijk wel te doen, maar het maakt je design er niet bepaald gemakkelijker op.

Wat je ook kunt doen is divs als tabel-cellen gebruiken, of wellicht simpeler: gebruik een table. Ik zou echter overwegen om je ontwerp te herzien.

Een table is wel vele malen simpeler, omdat de cellen automatisch meerekken:
  1. <!DOCTYPE html>
  2. <meta charset="UTF-8">
  3. <style type="text/css">
  4. .main { table-layout: fixed; border-collapse: collapse; }
  5. .left { width: 200px; border-radius: 25px; background-color: #ffcccc; }
  6. .gap { width: 25px; }
  7. .right { width: 550px; border-radius: 25px; background-color: #ccffcc; padding: 25px; }
  8. ul.menu { margin: 25px 0 0; }
  9. </head>
  10.  
  11. <table class="main" border="0" cellspacing="0" cellpadding="0">
  12. <tr>
  13. <td class="left" valign="top">
  14. <ul class="menu">
  15. <li>een</li>
  16. <li>twee</li>
  17. <li>drie</li>
  18. </ul>
  19. </td>
  20. <td class="gap"><!-- derp --></td>
  21. <td class="right" valign="top">
  22. <p>Bla bla bla bla bla bla bla.</p>
  23. <p>Bla bla bla bla bla bla bla.</p>
  24. <p>Bla bla bla bla bla bla bla.</p>
  25. <p>Bla bla bla bla bla bla bla.</p>
  26. <p>Bla bla bla bla bla bla bla.</p>
  27. </td>
  28. </tr>
  29. </body>
  30. </html>
Offline Jointjeff - 17/09/2015 16:35
Avatar van Jointjeff HTML interesse Je hoeft enkel jQuery in te laden, zo:

  1. <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>


Belangrijk is dat je altijd eerst bovenstaande inlaadt alvorens je er mee gaat werken.

En vervolgens kun je dus dit in je code plaatsen:
  1. $(document).ready(function() {
  2. $('#normalepagina').css({
  3. minHeight: $('#MenuLinks').height()
  4. });
  5. $('#MenuLinks').css({
  6. minHeight: $('#normalepagina').height()
  7. });
  8. });
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.22s