2009-04-28 14 views
1

Ich entwickle eine Anwendung, wo es Abonnements gibt. Ich wollte wissen, was der beste Weg wäre, um Daten wie das folgende Schema (mit Tabellen oder CSS) zu strukturieren. (Sorry, ich bin bei der Arbeit und Kälte nicht veröffentlicht das Bild von dem, was ich will auf einem freien Bild-Hosting-Service.)Was wäre der beste Weg, um dieses Layout (CSS oder Tabellen) zu machen?

 
|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯| 
| Location: xxxxxxxxx-xxxx-xxx     Maximum subscription date: 12-11-2009 | 
| Begin date: 12-15-2009            Cost: $ 150  | 
| Duration: 2 Days                 | 
| Status:  Confirmed with remaining places       [Subscription] | 
|                      | 
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ 
|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯| 
| Location: xxxxxxxxx-xxxx-xxx     Maximum subscription date: 12-12-2009 | 
| Begin date: 12-15-2009            Cost: $ 150  | 
| Duration: 2 Days                 | 
| Status:  Confirmed with remaining places       [Subscription] | 
|                      | 
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ 

ich über Tabellen zu denken, aber ich bin nicht sicher, dass dies der beste Weg für Dies.

Antwort

13

Sie könnten es mit CSS tun, aber denken Sie über die Art der Daten, die Sie versuchen zu präsentieren: Es ist wirklich eine Tabelle von Daten, im Wesentlichen. Daher würde ich empfehlen, dafür eine Tabelle zu verwenden.

Wirklich, Tabellen erhalten eine Menge Flak, aber die einzige Zeit, die Sie Tabellen vermeiden sollten, ist, wenn Sie sie verwenden speziell für Layout-Zwecke (d. H. Nicht für die Zwecke der Vorlage einer Tabelle, unbedingt). Die Verwendung von Tabellen für diese Art von Situation wäre eine korrekte Verwendung von Tabellen.

+0

+1, konnte mir nicht mehr zustimmen Ich persönlich hasse Tische, weil sie miserabel für die Arbeit mit sind CSS und Javascript, aber wenn Sie nur tabellarische Daten anzeigen, gehen Sie dafür. – jvenema

5

Egal, wie sehr ich Tabellen für Layout hasse, würde ich Tabellen sagen.

+0

Sicherlich Tabellen –

2

Tabellen für den Inhalt, da sie im Wesentlichen tabellarische Daten, aber stellen Sie sicher, gute Verwendung von TH für Überschriften wie Status zu machen, Dauer usw.

0

Hängt davon ab, was Sie wollen

Die Beispiel in Ihrer Frage im Moment sieht aus wie eine Box mit einigen Zeilen Text, dann eine andere Box usw.

Wenn das ist, was Sie wollen, würde ich Divs mit CSS-Stil gestylt vorschlagen. Wenn es ein Layout "Spalten und Zeilen" ist, gehen Sie mit Tabellen.

+0

Sie sehen also keine Beziehung zwischen "Startdatum" und "12-15-2009" oder "Dauer" und "2 Tage"? –

+0

Es ist nicht so, dass ich keine Beziehung sehe, aber wenn er möchte, dass es so aussieht, wie er es gezeichnet hat, ist es kein traditionelles Tabellenlayout Eine Möglichkeit, die Daten zu präsentieren, ist eine Tabelle. –

+0

Es hängt auch von der Funktion ab. Vielleicht wird jedes dieser Dinge kleine Aktionsknöpfe haben, damit der Benutzer zum Beispiel klicken kann. –

1

Ich mache fast das gleiche in einer Form, die ich gerade entwickle, und ich benutze eine Definitionsliste. für ex:

Es ist ein bisschen schwieriger, so zu tun, aber der Code sieht sauberer IMHO. (Für mich ist es in Ordnung, es mit Tabellen zu tun, auch)

+0

Das hilft nicht wirklich in dieser spezifischen Frage. Es ist das Styling, nicht das semantische Markup. – ceejayoz

+3

@ceejayoz worüber sprichst du? Er fragt nach dem geeignetsten Weg, dies zu tun. Ich gebe ihm eine andere Möglichkeit, genau wie der Typ vor mir ihm mit divs sagt ... – Drevak

0

Anzeige von Tabellendaten in Tabellen

2

Ich glaube, die Leute brauchen reflex negative Reaktionen auf verwinden zur Verwendung von Tabellen-Tags in ihrem (x) html. Es ist eine gültige Menge von Tags und es rendert und organisiert "quadratische" Daten sehr gut. Wenn Sie vehement gegen sie sind, seien Sie klug und geben Sie das an, und der Rest ist unangemessen für semantisch unangemessene Verwendungen. Verwenden Sie keine Tabelle, um Ihr Logo und Ihre Kopfzeile auszulegen. Dies sind keine Tabellendaten. Werden Daten im Quadrat angezeigt, die Beziehungen zwischen Zeilen und Informationsspalten darstellen? Dann mach weiter und benutze Tabellen!

Für Ihre besondere Verwendung, würde ich empfehlen, angesichts meines Verständnisses der semantischen Markup (danke Dan C.!) Entweder eine Tabelle oder eine Definitionsliste. Dies beschreibt genau, was Sie zu schreiben versuchen.

0

Ich persönlich vermeide Tabellen, es sei denn, die Daten sind sehr tabellengesteuert (Excel-ähnliche Ergebnisse). In diesem Fall wäre wahrscheinlich eine Sammlung von divs oder sogar li based am besten.(Psuedo-Markup unten)

UL 
    LI 
    DIV.left 
     DL 
     DT LABEL {label} /LABEL /DT 
     DD {detail} 
     /DL 
     ... 
    /DIV.left 

    DIV.right 
     ... 
    /DIV.right 

    DIV.subscribe ... /DIV.subscribe 
    /LI 
    ... 
/UL

HINWEIS: Die Verwendung des Etiketts, ist, weil ich eine ähnliche Technik für Eingabeformulare verwenden. Konsequent zu sein, hilft bei der Reduzierung von nicht benötigtem CSS.

die .links und .right sind einfach zum Floaten, ich hätte die Positionierung des LI relativ sein, und eliminieren spezifische Styling wrt der CSS und Kugeln (IE macht diesen Teil ein bisschen ein PITA, weshalb ein DIV. list> DIV.list-item mag in puncto real-world besser sein

Verwandte Themen