[html] lege cel achtergrond

Pagina: 1
Acties:

  • Krooswijk.com
  • Registratie: Mei 2000
  • Laatst online: 17-08-2024
eigenlijk misschien een makkelijk vraag, maar na lange tijd loop ik voor de eerste keer tegen dit probleem aan.

ik heb een cel die een vaste grootte moet hebben, bv 100x100
nu heeft deze cel in dan ook altijs een achtergrondplaatje van ook 100x100.
de cel heeft echter niet altijd een inhoud (wat tussen <td>en </td> staat)

nu is het probleem dus, wanneer deze geen inhoud heeft, de cel (met zijn achtergrond) dus ook niet wordt weergegeven. ik zou er bv een aantal &nbsp; ik kunnen zetten, maar dat is natuulijk geen oplossing, zeker niet omdat php de eigenlijke breedte en hoogte bepaald en de cel dus van size kan veranderen. is er een manier om zo'n lege cel, toch gewoon compleet met achtergrond weer te geven. heb al het een en ander geprobeerd met css, maar het lukt echt niet, ook al lijkt het op het eerste oog geen echt complex iets :)

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 00:47

crisp

Devver

Pixelated

Cascading Stylesheet:
1
2
3
table {
  empty-cells: show;
}


voor oude browsers zou je er een &nbsp; in kunnen zetten

[ Voor 40% gewijzigd door crisp op 05-10-2004 10:24 ]

Intentionally left blank


  • Krooswijk.com
  • Registratie: Mei 2000
  • Laatst online: 17-08-2024
ok met die nonbrakingspaces had ik al geprobeerd dus, maar dat gaat niet lukken vanwege de wisselende breedte van de cellen. het volgende heb ik nu: het betreft twee nodes met een lijntje ertussen, waar dus soms een tekst bij komt te staan en soms niet, in het vb hieronder is de tweede <TD></TD> dus leeg. ik heb de css aan de table toegevoegd, maar het werkt nog niet. meerdere bronnen vermelden ook dat dit wel de goeie oplossing is. dus echt verder kom ik daar ook niet mee. is er nog iets anders (behalve layers) wat ik kan doen, of doe ik hier dan iets stoms?

HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<TABLE style="empty-cells: show;" cellspacing="0" cellpadding="0" border="0" bgcolor="#FFFFFF">
  <TR>

    <TD align="center" valign="middle" width="100" height="100">
      [img]"renderingengine/script.draw.node.php?name=1&width=100&height=100"[/img]
    </TD>

    <TD background="renderingengine/script.draw.line.php?type=9&width=100&height=100" align="center" valign="middle" width="100" height="100">
    </TD>

    <TD align="center" valign="middle" width="100" height="100">
      [img]"renderingengine/script.draw.node.php?name=1&width=100&height=100"[/img]
    </TD>
  </TR>
</TABLE>

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 23:21
Welke browser heb je het over? En heb je een doctype meegegeven in je document?

  • Krooswijk.com
  • Registratie: Mei 2000
  • Laatst online: 17-08-2024
IE 6.0
doctype niet meegegeven, is dit nodig?

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 23:21
Ik weet het niet exact maar ik vermoed van wel. Het is namelijk wel zo dat IE quirks mode gebruikt als je geen doctype meegeeft. crisp kan hier vast uitsluitsel over geven.

  • Krooswijk.com
  • Registratie: Mei 2000
  • Laatst online: 17-08-2024
[quote]crisp schreef op 05 oktober 2004 @ 10:24:
Cascading Stylesheet:
1
2
3
table {
  empty-cells: show;
}


ik lees hier het volgende:

Beschrijving: bepaalt of lege cellen in een tabel randen moeten krijgen (enkel bij seperated borders model).
Waarden: show | hide
Voorbeeld: table { empty-cells: hide }
Ondersteuning: NS 6.2

dus zal volgens mij niet echt gaan werken. vind dit toch een beetje vreemd van IE6 en misschien andere browsers

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 00:47

crisp

Devver

Pixelated

och ja, IE :P
oplossing: toch content in de cell zetten; desnoods met een hele kleine fontsize/line-height

[ Voor 6% gewijzigd door crisp op 05-10-2004 12:26 ]

Intentionally left blank


  • Krooswijk.com
  • Registratie: Mei 2000
  • Laatst online: 17-08-2024
crisp schreef op 05 oktober 2004 @ 12:26:
och ja, IE :P
oplossing: toch content in de cell zetten; desnoods met een hele kleine fontsize/line-height
ok :) je voelt 'm al, maaaaar

het kan dus zijn dat er de ene keer wel tekst in komt (geen probleem) en de andere keer niet (wel probleem). dus een transpararante pixel img met 100x100 grootte zal denk ik ook niet lukken. zijn layers dan echt de enige oplossing?

  • Cubix
  • Registratie: Juni 2001
  • Niet online
Als je toch php gebruikt kan je wanneer er geen tekst in komt te staan automatisch een doorzichtig gifje van i bij 1 px laten plaatsen. Is dat een idee?

  • Sosabowski
  • Registratie: Juni 2003
  • Laatst online: 18-04 11:49

Sosabowski

nerd

met één spatie wordt toch gewoon de hele cel getoond?
PHP:
1
if ($inhoud == "" ) $inhoud = "&nbsp;";

The whole problem with the world is that fools and fanatics are always so certain of themselves, and wiser people so full of doubts. -- Bertrand Russell


  • InZane
  • Registratie: Oktober 2000
  • Laatst online: 22:28
IorGie schreef op 05 oktober 2004 @ 13:12:
met één spatie wordt toch gewoon de hele cel getoond?
PHP:
1
if ($inhoud == "" ) $inhoud = "&nbsp;";
$inhoud == "" :?

Doe het dan zo :)

PHP:
1
2
3
if (empty($inhoud)) {
    $inhoud = '&nbsp;';
}

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 23:21
en empty gebruiken is in php4 tergend langzaam, dus dan is dit weer beter:

PHP:
1
2
3
4
if(!isset($inhoud) or empty($inhoud))
{
  $inhoud = '&nbsp;';
}

Verwijderd

Gebruik dit in je <TD> tag

code:
1
<TD STYLE="width:100; height:100">
Pagina: 1