Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Tabele] Tabele wielokątne
Asmox
post
Post #1





Grupa: Zarejestrowani
Postów: 359
Pomógł: 12
Dołączył: 16.01.2009

Ostrzeżenie: (0%)
-----


Chciałbym się dowiedzieć, czy istnieje jakiś sposób na stworzenie tabeli, która ma więcej komórek w danych kolumnach, unikając tworzenia całych wierszy z komórkami. Klasycznym przykładem takiego rozwiązania jest na przykład faktura:
Kod
                     +--------------+-----+-------+----------+-----------+
                     |nazwa_produktu|ilość|podatek|cena_netto|cena_brutto|
                     +--------------+-----+-------+----------+-----------+
                     |produkt 1     |50   |22%    |1000 zł   |1220 zł    |
                     +--------------+-----+-------+----------+-----------+
                                          |   SUMA|1000 zł   |1220 zł    |

Jak widzicie, kolumny nazwa_produktu, ilość i podatek mają tylko 2 komórki (nagłówek i dane), a podatej, cena_netto i cena_brutto 3. Czy dałoby się zrobić coś na kształt tego w HTML'u? Jeżeli nie, to czy dałoby się uczynić te komórki pustymi (bez obramowania komórki) bez stosowania wewnątrz nich stylu CSS border:none; ?

Ten post edytował Asmox 6.06.2009, 18:32:41
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


colspan/rowspan?
Go to the top of the page
+Quote Post
Asmox
post
Post #3





Grupa: Zarejestrowani
Postów: 359
Pomógł: 12
Dołączył: 16.01.2009

Ostrzeżenie: (0%)
-----


Nie, nie to rozwiązanie odpada, chyba że by użyć tego przy komórce najbardziej z brzegu (w bym przypadku SUMA). Chociaż faktycznie wpadło mi do głowy takie rozwiązanie, to czy nie dałoby się tego zrobić inaczej?
Go to the top of the page
+Quote Post
Crozin
post
Post #4





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Kod
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    
    <title>Przykładowy dokument</title>
    
    <style type="text/css">
        td, th{
            border: 1px solid #000;
        }

        #table1 th[scope=row]{
            text-align: right;
        }

        #table2{
            empty-cells: hide;
        }
    </style>
    <script type="text/javascript"></script>
</head>
<body>
    <table id="table1">
        <thead>
            <tr>
                <th>Nazwa produktu</th>
                <th>Ilość</th>
                <th>Podatek</th>
                <th>Cena netto</th>
                <th>Cena brutto</th>
            </tr>
        </thead>
        <tfoot>
            <tr>
                <th scope="row" colspan="3">Suma</th>
                <td>146</td>
                <td>200</td>
            </tr>
        </tfoot>
        <tbody>
            <tr>
                <td>Produkt X</td>
                <td>123</td>
                <td>22%</td>
                <td>88</td>
                <td>100</td>
            </tr>
            <tr>
                <td>Produkt X</td>
                <td>123</td>
                <td>22%</td>
                <td>88</td>
                <td>100</td>
            </tr>
        </tbody>
    </table>

    <table id="table2">
        <thead>
            <tr>
                <th>Nazwa produktu</th>
                <th>Ilość</th>
                <th>Podatek</th>
                <th>Cena netto</th>
                <th>Cena brutto</th>
            </tr>
        </thead>
        <tfoot>
            <tr>
                <td></td>
                <td></td>
                <th scope="row">Suma</th>
                <td>146</td>
                <td>200</td>
            </tr>
        </tfoot>
        <tbody>
            <tr>
                <td>Produkt X</td>
                <td>123</td>
                <td>22%</td>
                <td>88</td>
                <td>100</td>
            </tr>
            <tr>
                <td>Produkt X</td>
                <td>123</td>
                <td>22%</td>
                <td>88</td>
                <td>100</td>
            </tr>
        </tbody>
    </table>
</body>
</html>
Go to the top of the page
+Quote Post
erix
post
Post #5





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Kod
#table1 th[scope=row]{
            text-align: right;
        }

Ekhm, a co z IE?
Go to the top of the page
+Quote Post
Asmox
post
Post #6





Grupa: Zarejestrowani
Postów: 359
Pomógł: 12
Dołączył: 16.01.2009

Ostrzeżenie: (0%)
-----


Rozwiązanie nawet może być, chociaż z tymi nagłówkami o stopkami, to generowanie automatycznie w php będzie robione. No coż, to nie to, o co mi chodziło, ale w sumie też niech będzie.
Go to the top of the page
+Quote Post
Crozin
post
Post #7





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Cytat
Ekhm, a co z IE?
To jest przykład... (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Cytat
chociaż z tymi nagłówkami o stopkami, to generowanie automatycznie w php będzie robione
Hmm... ale co z tego, że z automatu poleci?
Go to the top of the page
+Quote Post
Asmox
post
Post #8





Grupa: Zarejestrowani
Postów: 359
Pomógł: 12
Dołączył: 16.01.2009

Ostrzeżenie: (0%)
-----


Cytat
Hmm... ale co z tego, że z automatu poleci?

Bo te twoje rozwiązanie z <tbody>, <tfooter> i <theader> jest trochę... dziwne
Go to the top of the page
+Quote Post
Crozin
post
Post #9





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Eee... jest semantyczne?

Poza tym nadal nie wiem, dlaczego fakt, że będzie to generowane skryptowo miałoby utrudnić zbudowane takiej tabelki.
Go to the top of the page
+Quote Post
Zajec
post
Post #10





Grupa: Zarejestrowani
Postów: 1 086
Pomógł: 8
Dołączył: 10.12.2003

Ostrzeżenie: (0%)
-----


Przed komórką z SUMA dodaj po prostu
Kod
<td colspan="2" style="border: 0;"></td>
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.09.2025 - 05:18