Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[CSS] Hoogte van rij instellen

Pagina: 1
Acties:

  • Bozozo
  • Registratie: Januari 2005
  • Laatst online: 20-02 16:10

Bozozo

Your ad here?

Topicstarter
Ik ben nog steeds aan het knutselen aan mijn ASCII Art Fabrieksel. Inmiddels ben ik overgestapt naar een tabel voor de opmaak van de ascii-pagina. Met CSS lukten verschillende dingen niet (menu even breed als ascii, ascii verticaal centreren) dus vandaar.

Ik heb echter niet veel ervaring met opmaak via tabellen O-) en ik krijg het niet voor elkaar om de hoogte van het menu goed te krijgen.

De hele pagina zit in een grote tabel met height: 100% en overflow: auto.

Als de ASCII minder dan beeldvullend is dan rekt de bovenste rij een op. Op zich wel logisch... de tabel moet worden opgerekt om 100% hoogte te bereiken, en dat wordt verdeeld over alle rijen. Het ziet er echter niet uit als het menu bijna beeldvullend is (bij hele kleine ASCII's).

Het instellen van een hoogte voor de bovenste rij of cel heeft geen effect, tenzij ik table-layout: fixed inschakel. In dat geval loopt de ascii echter uit de tabel (te zien doordat het menu niet meer meerekt) en dat is ook weer niet de bedoeling. Bovendien werkt het verticaal centreren dan niet meer.

Ik krijg dus de layout die ik wil hebben niet voor elkaar. Op zich wil ik best van tabellen afstappen (voelt vies :P ) maar zoals gezegd krijg ik het met CSS ook niet voor elkaar.

Er moet dus tegelijkertijd aan de volgende voorwaarden worden voldaan:
- Menu over de volledige breedte van de pagina (dit hoeft nog niet persee maar is wel mooier)
- Menu fixed height (eventueel in em... als het maar niet beeldvullend kan worden)
- ASCII horizontaal en verticaal gecentreerd

Is dat überhaupt mogelijk in CSS2?

[ Voor 15% gewijzigd door Bozozo op 22-03-2008 17:27 ]

TabCinema : NiftySplit


  • _Thanatos_
  • Registratie: Januari 2001
  • Laatst online: 05-09 14:39

_Thanatos_

Ja, en kaal

Ik zou niet weten waarom niet. Het menu pleur je in een <div> met "width:100%;height:6em" ofzo. Voor het mooie zou je em "position:fixed" erbij kunnen geven. De ASCII gooi je in een <pre> met "margin:auto 0;text-align:center".

Vgs mij kan dat best werken zo.

日本!🎌


  • Bozozo
  • Registratie: Januari 2005
  • Laatst online: 20-02 16:10

Bozozo

Your ad here?

Topicstarter
Da's niet verticaal aligned. Anders is het inderdaad niet zo moeilijk :)

TabCinema : NiftySplit


  • Bozozo
  • Registratie: Januari 2005
  • Laatst online: 20-02 16:10

Bozozo

Your ad here?

Topicstarter
Het is me gelukt! 100% height, verticaal centreren én een fixed height balk boven je content. Eigenlijk is het niet eens zo moeilijk.

Cascading Stylesheet:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
    html, body {
        height: 99%;
        padding: 0;
        margin: 0;
        border: none;
    }
    table#wrapper {
        border-collapse: collapse;
        width: 100%;
        height: 100%;
        background: transparent url("menu_background.gif") repeat-x top left; //55px hoog
    }
    div#menu {
        position: absolute;
        top: 0;
        left: 0;
    }
    div#ascii {
        text-align: center;
        padding-top: 55px;
    }


HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<body>
    <table id="wrapper">
        <tr>
            <td>
                <div id="menu">
                    <!-- Menu -->
                </div>
                
                <div id="ascii">
                    <!-- Verticaal gecentreerde content -->
                </div>
            </td>
        </tr>
    </table>
</body>


Dit alles wekt de illusie van een menu met achtergrond (over de volledige breedte, daarom staat de achtergrondafbeelding in de table), met daaronder vertical gecentreerde fluid content.

edit: inmiddels werkend te bewonderen

[ Voor 4% gewijzigd door Bozozo op 23-03-2008 15:31 ]

TabCinema : NiftySplit