Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Niepoprawne generowanie tabelki w Operze
Forum PHP.pl > Forum > Po stronie przeglądarki > CSS
anonym
Witam,
mam takie linijki odpowiedzialne za generowanie tabeli:
  1. <?php
  2. echo ('<table border=\"1\" bordercolor=\"#FFFFFF\" style=\"border-collapse: collapse; border-width: 0\" style=\"font-family: Verdana; font-size: 8pt\">');
  3. echo ('<th width=\"25\">ID</th><th width=\"160\">xxx</th><th width=\"110\">xxx</th><th width=\"140\">xxx</th><th width=\"120\" colspan=\"2\">xxx</th><th width=\"170\">xxx</th>');
  4. ?>

W IE jest wszystko OK, ale w Operze nie wyświetla mi wcale ramek tabelki. Zawartość tabeli jest generowana na podstawie bazy danych MYSQL. Co z tym można zrobić?
Pozdrawiam.
j00seph
Hmm..
Moge sie nie znać, lub poprostu jestem nie na czasie - ale zawsze myslałem ze tabele budujemy mniejwiecej tak tak :
Kod

<table parametry>
<tr>
<td>
</td>
</tr>
</table>


/nigdy w zyciu nie zdażyło mi sie wykorzystywać znacznika <th> -prawde mowiac to 1 raz o nim slysze ...
pozdr.
sendi16
znacznik <th> jak dobrze pamitam sluzy do zrobienia naglowka tabeli
revyag
Table jest źle generowana. Masz znacznik otwierający table a nie ma znacznika zamykającego. Następna sprawa to taka, że znaczniki th służą do określenia tytułów kolumn w tabeli. Następna sprawa, używasz dwa razy atrybutu style dla znacznika table, po co ? Tak się nie robi, umieść wszystko w treści jednego atrybutu. Poza tym zastąp stylami pozostałe atrybuty, które używasz w table. No i dlaczego robisz bordera białego 1px, a potem w stylach robisz mu 0px i dziwisz sie że nie masz ramki smile.gif
Nie wiem jaką tabelę chcesz uzyskać i co konkretnie idzie od mysql, więc rzucę jakiś przykład z wykorzystaniem znaczników th. Najpierw warto rozdzielić treść stylów od tabeli, żeby wyglądało to bardziej czytelnie.
Sekcja head:
Kod
<style>
.tabelka{
    border: 1px solid black;
    border-collapse:collapse;
    font-family: Verdana;
    font-size: 8pt;
    text-align: center;
}
</style>

no i generowanie tabelki:
  1. <?php
  2. echo('<table class=\"tabelka\">');
  3. echo('<tr><th width=\"25\">col1</th><th width=\"160\">col2</th><th width=\"110\">col3</th></tr>');
  4. echo('<tr><td> tekst1</td><td>tekst2</td><td>tekst3</td></tr>');
  5. echo('<tr><td> tekst11</td><td>tekst22</td><td>tekst33</td></tr>');
  6. echo('</table>');
  7. ?>
yavaho
A czy takie cos jak ponizej mozna zapisac w calosci w stylach?
  1. <table width="100%" border="1" cellspacing="1" cellpadding="2" bgcolor="#F3F3F3" bordercolorlight="#FFFFFF" bordercolordark="#C0C0C0" style="border-collapse: collapse">
scanner
Przeniesione: php Początkujący -> CSS
sf
Cytat(yavaho @ 2004-10-12 12:55:33)
A czy takie cos jak ponizej mozna zapisac w calosci w stylach?
  1. <table width="100%" border="1" cellspacing="1" cellpadding="2" bgcolor="#F3F3F3" bordercolorlight="#FFFFFF" bordercolordark="#C0C0C0" style="border-collapse: collapse">

Nie wiem czy zdajesz sobie sprawę, że nie ma w specyfikacji HTML 4 czegoś takiego jak `bordercolorlight` czy też `bordercolordark`. Powoduje to, że na części przeglądarek (poza IE) nie działają te atrybuty. Więc zamiast tego użyj styli właśnie, które umożliwiaja stworzenie tego co chcesz poprzez użycie border-top, border-left itd. winksmiley.jpg

http://www.w3.org/TR/CSS21/tables.html

Miłej lektury.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.