Automatische hoogte-instelling box in CSS

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

George van Baasbank

George van Baasbank

24/08/2014 13:26:51
Quote Anchor link
Hallo allemaal,

Ik zit met een kleine uitdaging:

Ik heb op een pagina een kader gedefinieerd ZONDER vaste hoogte-instelling. Deze hoogte-instelling is nl. afhankelijk van de vulling van dit kader. Alleen met de code zoals ik hem heb gedefineerd is het kader te klein.

De html-code: (index.php)

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<section>
   <article>
      <div class="kader900">
         <?php
            if($lTest == 0 ) {
               include "include/sys_melding.php";
            }
elseif($lTest == 1) {
               include "include/winkel.inc.php";
            }
elseif($lTest == 2) {
               include "include/invulblad.inc.php";
            }
elseif($lTest == 3) {
               include "include/samenvatting.inc.php";
            }
elseif($lTest == 4) {
               include "include/afronden.inc.php";
            }

         ?>

      </div>
   </article>
</section>


De html-code: (winkel.inc.php)
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<section>
    <?php
        $nTeller
= 1;
        while($rowConcerten = mysqli_fetch_array($cResultConcerten)) {
            if($nTeller == 4) {
                $cClass = "box_rechts";
            }
else {
                $cClass = "box_links";
            }

            $nMax = $rowConcerten['aantal_stoelen'] - $rowConcerten['gereserveerd'];
            if($nMax > 10) {
                $nMax = 10;
            }

            if($nMax == 0){
                $cKnopTekst = "Uitverkocht";
            }
else {
                $cKnopTekst = "Reserveren";
            }

    ?>

    <div class="<?php echo $cClass ; ?>">
        <?php if($nMax == 0 ) { ?>
            <div id="uitverocht">Uitverkocht</div>
        <?php } ?>
        <figure class="winkel_afbeelding">
            <img class="winkel_afbeelding" src="<?php echo $rowConcerten['afbeelding'] ; ?>" />
        </figure>
        <div class="bericht txt_midden"><?php echo VolleDatumKort($rowConcerten['datum']) ; ?></div>
        <div class="bericht txt_midden"><?php echo $rowConcerten['omschrijving'] ; ?></div>
        <div class="standaardregel">Er zijn nog <?php echo ($rowConcerten['aantal_stoelen'] - $rowConcerten['gereserveerd']) ; ?> plaatsen beschikbaar</div>
        <div class="standaardregel">Prijs per stoel:&nbsp;&euro;&nbsp;<?php echo NederlandsBedrag($rowConcerten['prijs']) ; ?></div>
        <?php if($nMax > 0 ) { ?>
            <form action="index.php?concert=<?php echo $rowConcerten['id'] ; ?>" method="POST">
                <div class="standaardregel txt_midden">Aantal kaarten: <input type="number" class="standaardregel" name="aantal" min="0" max="<?php echo $nMax ; ?>" title="Selecteer hier het aantal gewenste kaarten (max 10)" size="20px" value="0" /></div>
                <div class="txt_midden"><input class="smalle_knop" type="submit" name="submit" title="Leg uw reservering vast" value="<?php echo $cKnopTekst ; ?>" /></div>
            </form>
        <?php } else { ?>
            <div class="standaardregel txt_midden">Aantal kaarten: <input type="number" class="standaardregel" name="aantal" min="0" max="<?php echo $nMax ; ?>" size="20px" value="0" /></div>
            <div class="txt_midden"><input class="smalle_knop" type="submit" name="submit" title="Helaas zijn de kaarten voor dit concert uitverkocht. Probeer een concert op een ander tijdstip" value="<?php echo $cKnopTekst ; ?>" /></div>
        <?php } ?>
    </div>
    <?php
        $nTeller
++;
        if($nTeller == 5) {
            $nTeller = 1;
        }
        }

    ?>

</section>


De CSS:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
.kader900 {
    display: block;
    top: 100px;
    width: 900px;
    margin-left: auto;
    margin-right: auto;
    border: solid black 2px;
    padding: 20px;
    background-color: whitesmoke;
    -webkit-box-shadow: 6px 6px 9px darkslategray;
    box-shadow: 6px 6px 9px darkslategray;
}

.box_links {
    position: relative;
    width: 179px;
    min-height: 300px;
    max-height: 300px;
    border: solid black 1px;
    float: left;
    margin-right: 25px;
    margin-left: 5px;
    padding: 10px;
}

.box_rechts {
    position: relative;
    width: 179px;
    min-height: 300px;
    max-height: 300px;
    border: solid black 1px;
    float: right;
    margin-right: 5px;
    padding: 10px;
}



Waar gaat het nu fout in de css-class kader900?

Kijk eens voor een voorbeeld op http://cco-harderwijk.nl/v2


George
 
PHP hulp

PHP hulp

19/12/2024 11:02:35
 
- SanThe -

- SanThe -

24/08/2014 14:10:24
Quote Anchor link
Wat is de fout?

Dat die 4 divs te hoog staan? Als je de padding weghaalt gaan ze een stuk omlaag.
Dat reserveren niet binnen de zwarte lijn valt? Dat komt door max-height.
 

24/08/2014 14:44:54
Quote Anchor link
Ik zou de div's niet links en rechtsnoemen maar gewoon box. Je kan altijd aangeven met een extra class dat deze zich anders moet gedragen, of zeggen dat het laatste child element anders moet doen dan de anderen.

Daarnaast zou ik de boxes allemaal een hoogte geven met een overflow hidden. De content die IN het blokje valt kan je dan wrappen in een bepaalde div en het formulier erbuiten. Zo heb je altijd dezelfde hoogste aan boxes ookal is je content kleiner.

Ik weet niet of dit jou probleem oplost anders graag zoals -SanThe- aangeeft betere toelichting geven.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.