Problem mit float [Gelöst]

  • lennard lennard
    R2-D2
    0 x
    69 Beiträge
    0 Hilfreiche Beiträge
    12. 09. 2006, 14:56

    Hallo,

    ich habe folgendes Problem. Ich habe den Content-Bereich meines Layouts in content_links und content_rechts geteilt. Den rechten Bereich möchte ich mit einer anderen Hintergrundfarbe und einem Rand links stylen. Sobald ich aber im css das border-left definiere, rutscht mir der rechte Content immer nach unten. Kann mir da wer helfen?

    Hier meine Werke:

    [HTML]<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Website</title>
    <link href="styles.css" rel="stylesheet" type="text/css" />
    </head>

    <body>

    <div id="rahmen">
    <div id="logo"> </div>
    <div id="header"> </div>

    <div id="content">
    <div id="content_links">
    <p><strong>1) Content here.</strong> column long long column very long fill fill fill long text text column text silly very make long very fill silly make make long make text fill very long text column silly silly very column long very column filler fill long make filler long silly very long silly silly silly long filler make column filler make silly long long fill very.</p>
    <p>very make make fill silly long long filler column long make silly silly column filler fill fill very filler text fill filler column make fill make text very make make very fill fill long make very filler column very long very filler silly very make filler silly make make column column </p>
    <p>fill long make long text very make long fill column make text very silly column filler silly text fill text filler filler filler make make make make text filler fill column filler make silly make text text fill make very filler column very </p>
    <p>column text long column make silly long text filler silly very very very long filler fill very fill silly very make make filler text filler text make silly text text long fill fill make text fill long text very silly long long filler filler fill silly long make column make silly long column long make very </p>
    </div>
    </div>

    <div id="content_rechts">
    <p><strong>3) More stuff here.</strong> very text make long column make filler fill make column column silly filler text silly column fill silly fill column text filler make text silly filler make filler very silly make text very very text make long filler very make column make silly column fill silly column long make silly filler column filler silly long long column fill silly column very </p>
    </div>
    <div id="footer">
    <div id="footer_links"> </div>
    <div id="footer_rechts"> </div>
    </div>
    </div>

    </body>
    </html>[/HTML]

    hier die css-Datei:

    1. /* CSS Document */
    2.  
    3. html {
    4. margin:0;
    5. padding:0;
    6. background-color:#fff;
    7. }
    8.  
    9. body
    10. {
    11. font-family:Verdana, sans-serif;
    12. font-size:12px;
    13. text-align:center;
    14. }
    15.  
    16. /* Der Rahmen */
    17. #rahmen {
    18. text-align:left;
    19. margin:0 auto;
    20. width:780px;
    21. border:1px solid #000000;
    22. color:#000000;
    23. }
    24.  
    25. h1 {font-size:18px;color:#000000;margin:0px;}
    26. h2 {font-size:14px;color:#000000;}
    27. h3 {font-size:14px;color:#000000;}
    28. p {margin:10px;}
    29.  
    30.  
    31. a:link, a:visited, a:active, a:hover
    32. {
    33. text-decoration:underline;
    34. font-weight:bold;
    35. color:#000;
    36. font-size:10px;
    37. }
    38. a:active, a:hover
    39. {
    40. color:red;
    41. }
    42.  
    43. /* Das Logo */
    44. #logo {
    45. background:url(images/logo.gif);
    46. width:780px;
    47. height:91px;
    48. }
    49.  
    50. /* Der Header */
    51. #header {
    52. background:url(images/header.gif);
    53. width:780px;
    54. height:186px;
    55. }
    56.  
    57. /* Der Content */
    58. #content_links {
    59. float:left;
    60. width:492px;
    61. }
    62.  
    63. #content_rechts {
    64. float:right;
    65. width:288px;
    66. background-color:#FFFBE4;
    67. border-left:solid;
    68. border-left-color:#CCCCCC;
    69. border-left-width:1px;
    70. }
    71.  
    72. /* Der Footer */
    73. #footer {
    74. clear:both;
    75. height:auto;
    76. width:780px;
    77. }
    78.  
    79. #footer_links {
    80. float:left;
    81. width:492px;
    82. height:100px;
    83. background:url(images/footer_links.gif);
    84. background-position:left;
    85. background-repeat:no-repeat;
    86. }
    87.  
    88. #footer_rechts {
    89. float:right;
    90. clear:both;
    91. width:288px;
    92. height:100px;
    93. background:url(images/footer_rechts.gif);
    94. background-position:right;
    95. background-repeat:no-repeat;
    96. }

    Lg, Michael


  • 1
  • tandem tandem
    Jedi-General
    0 x
    1053 Beiträge
    1 Hilfreiche Beiträge
    12. 09. 2006, 16:19

    Hallo,

    wahrscheinlich hilft in Zeile 64 auch float:left.

  • ONeill ONeill
    Jedi-Meister
    0 x
    309 Beiträge
    0 Hilfreiche Beiträge
    12. 09. 2006, 16:33

    Gib ein entsprechendes width für den Linken Content an und ein entsprechendes margin-left für den rechten.

  • cope cope
    Jedi-Ratsmitglied
    0 x
    582 Beiträge
    0 Hilfreiche Beiträge
    12. 09. 2006, 17:42

    Wenn beide floaten, bräuchte der rechte doch eig. keine margin oder?
    Schätze mal, der Effekt tritt im Firefox nicht auf?
    Wenn nur IE, dann ist es das alte Boxenmodell-Prob vom IE.
    Linkes Div eine etwas geringere Breite geben und schaun, ob das schon reicht

    VG
    Peter

  • ttb ttb
    Jedi-Ritter
    0 x
    143 Beiträge
    0 Hilfreiche Beiträge
    12. 09. 2006, 20:46

    Zuerst einmal braucht nur [b]ein[/b] Element float und [b]nicht[/b] beide! Das zweite dann ein entsprechendes margin und das erste zusätzlich clear.

    Das nur nebenbei.

    Zum eigentlichen Problem:

    Rechnen wir mal zusammen:
    780 Pixel (#rahmen)
    - 492 Pixel (#content_links)
    - 288 Pixel (#content_rechts)
    - 1 Pixel (border bei #content_rechts)
    =========
    - 1 Pixel.

    Ergo ist #content_rechts für den IE zu breit und rutscht somit runter.

  • lennard lennard
    R2-D2
    0 x
    69 Beiträge
    0 Hilfreiche Beiträge
    13. 09. 2006, 08:50

    Hallo,

    es hat geholfen, dem rechten Content ein Pixel weniger Breite zu geben, damit der Border noch Platz hat.

    Die floats habe ich so belassen, wenn ich nämlich das float:right; im rechten Content wegnehme, rutscht mir dieser Content unter den linken.

    Danke für die Hilfe, so funktionierts.

    Michael

  • ONeill ONeill
    Jedi-Meister
    0 x
    309 Beiträge
    0 Hilfreiche Beiträge
    13. 09. 2006, 09:04

    Wie der Poster über die schon sagte und ich auch, musst du eine entsprechende Breite beim flaotenden Element angeben ( was man immer tuen sollte ) und ein entsprechendes Margin-left für den rechten Teil.

  • 1