|
| Kan man styre text-alignment på kolonne-ba~ Fra : Peter Knutsen |
Dato : 13-07-10 11:26 |
|
Jeg har kigget lidt i forskellige wikitext-dokumenter, og det ser ud som
om man ikke kan styre text-alignment, altså
højre-/venstre-/center-justering, på basis af kolonner (columns), sådan
at f.eks. 1. og 3. kolonne i en tabel skal være venstrejusteret og 2.
kolonne centreret.
Det ser ud som om man kun kan definere det for hele tabellen, for én
række ad gangen, eller for den enkelte celle.
Wikitext bliver fortolket om til HTML af wikisoftwaren, så mit spørgsmål
er dybest set, om det i HTML kan lade sig gøre at definere
text-alignment på kolonnebasis eller ej?
De "løsninger" jeg har set går på at man definerer én alignment for hele
tabellen, og så går man ind i hver enkelt celle, der skal alignes på en
anden måde, og specificerer hvad man vil have. Og det strider altså mod
min dovenskab.
(Tabel/border-tingen vender jeg tilbage til snart. Nu har jeg jo fået
nogle links at klikke på.)
--
Peter Knutsen
| |
Allan Vebel (13-07-2010)
| Kommentar Fra : Allan Vebel |
Dato : 13-07-10 12:54 |
|
Peter Knutsen skrev:
> Det ser ud som om man kun kan definere det
> for hele tabellen, for én række ad gangen, eller
> for den enkelte celle.
Det lyder som om du er ved at opbygge et helt
design i tabeller?
Skal du lave kolonner, skal du lige kigge på de
forskellige muligheder på
http://webdesign101.dk/layout/
> lade sig gøre at definere text-alignment på
> kolonnebasis eller ej?
Ja, du kan styre alt med css - se på:
text-align:left;
text-align:center;
text-align:right;
> alignes på en anden måde, og specificerer hvad
> man vil have. Og det strider altså mod min
> dovenskab.
Giv lige et link til din side - det er meget nemmere
når vi kan se hvad du allerede har lavet.
--
Allan Vebel
http://vebel.dk | http://html-faq.dk
http://webdesigngruppen.dk
| |
Peter Knutsen (13-07-2010)
| Kommentar Fra : Peter Knutsen |
Dato : 13-07-10 14:46 |
|
On 13/07/2010 13:54, Allan Vebel wrote:
> Peter Knutsen skrev:
>
>> Det ser ud som om man kun kan definere det
>> for hele tabellen, for én række ad gangen, eller
>> for den enkelte celle.
>
> Det lyder som om du er ved at opbygge et helt
> design i tabeller?
Nej, jeg bruger ikke tabeller til at styre layoutet, men til at
præsentere information.
Forestil dig at du skal købe ny cykel; så kan det være nyttigt at se
alle cykelmodellerne præsenteret i én stor tabel, så du kan overskue
dem, se hvad hver model koster, hvor mange gear den har, hvor meget den
vejer, hvor mange gange Tour de France er blevet vundet på netop den
fabrikants cykler, hvor mange punkteringer der er sket under Tænks 5000
km test-kørsel på by- og landevej, og så videre.
Det jeg har gang i er et rollespil, præsenteret som hypertekst, hvor man
som spiller skal træffe mange valg inden man overhovedet begynder på
selve spillet.
Netop det er tabeller rigtig gode til.
Nogle tabeller kombinerer to valgmuligheder til et samlet svar.
Eksempelvis kan der på X-aksen være angivet farven på en cykel (rød,
hvid, sølv, grøn, blå, sort, orange), og på Y-aksen antal gear (3, 5,
10, 12, 14, 16), og i hver enkelt celle står prisen på netop den cykel
så, bortset fra de kombinationer der ikke findes ("fabrikanten nægter at
lave røde 5-gears-cykler, fordi han lider af overtro").
Disse utilgængelige kombinationer vil jeg gerne fremhæve lidt bedre, ved
at deres celler, altså de tomme celler, skal være uden indre kant. Dels
fordi det bliver nemmere at overskue, og dels fordi jeg synes det er
æstetisk pænt.
Det samme gælder justeringen af tekst i de enkelte kolonner. Dels er det
pænt når hver enkelt kolonne er justeret passende, i stedet for at de
alle er justeret på samme måde (p.t. er alt venstrestillet), og dels
øger det overskueligheden, især hvis nogle kolonner er meget brede.
> Skal du lave kolonner, skal du lige kigge på de
> forskellige muligheder på
>
> http://webdesign101.dk/layout/
Tak, men det ligner noget til at styre layoutet af en side, og det jeg
vil styre er layoutet af reelle tabeller.
>> lade sig gøre at definere text-alignment på
>> kolonnebasis eller ej?
>
> Ja, du kan styre alt med css - se på:
Men jeg har ret i at man ikke kan med kun HTML?
> text-align:left;
> text-align:center;
> text-align:right;
Det kan jeg godt smide efter hver enkelt kolonne?
>> alignes på en anden måde, og specificerer hvad
>> man vil have. Og det strider altså mod min
>> dovenskab.
>
> Giv lige et link til din side - det er meget nemmere
> når vi kan se hvad du allerede har lavet.
Det vil jeg frygtelig gerne, men min wiki er desværre en offline-wiki i
de næste to-en-halv uge, hvilket irriterer mig lige så meget som det
irriterer dig og de andre hjælpsomme personer herinde.
Lige nu har jeg de her to ting jeg gerne vil ordne, og når min wiki så
endelig bliver lagt online, så har jeg helt sikkert en milliard andre
lidt mindre væsentligt spørgsmål og ønsker som jeg vil hærge bl.a.
Usenet med.
--
Peter Knutsen
| |
Birger Sørensen (13-07-2010)
| Kommentar Fra : Birger Sørensen |
Dato : 13-07-10 13:10 |
|
Peter Knutsen har bragt dette til verden:
> Jeg har kigget lidt i forskellige wikitext-dokumenter, og det ser ud som om
> man ikke kan styre text-alignment, altså højre-/venstre-/center-justering, på
> basis af kolonner (columns), sådan at f.eks. 1. og 3. kolonne i en tabel skal
> være venstrejusteret og 2. kolonne centreret.
>
> Det ser ud som om man kun kan definere det for hele tabellen, for én række ad
> gangen, eller for den enkelte celle.
>
> Wikitext bliver fortolket om til HTML af wikisoftwaren, så mit spørgsmål er
> dybest set, om det i HTML kan lade sig gøre at definere text-alignment på
> kolonnebasis eller ej?
>
> De "løsninger" jeg har set går på at man definerer én alignment for hele
> tabellen, og så går man ind i hver enkelt celle, der skal alignes på en anden
> måde, og specificerer hvad man vil have. Og det strider altså mod min
> dovenskab.
>
> (Tabel/border-tingen vender jeg tilbage til snart. Nu har jeg jo fået nogle
> links at klikke på.)
Nu bevæger du dig ud i noget med selectors, og det er måske lidt meget
CSS at kaste sig ud i, for en "begynder". Men det skal - i hvert fald
teoretisk - kunne lade sig gøre.
http://www.w3.org/TR/CSS21/selector.html
Jeg har tilføjet lidt på http://bbsorensen.com/test/tabel/ der skulle
tydeliggøre:
td:first-child, td:first-child+td+td {
text-align : right;
}
td:first-child+td {
text-align : center;
}
td:first-child+td+td+td {
background-color : #00FF00;
}
Men kun testet i FF og IE8.
Birger
--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk
| |
Peter Knutsen (13-07-2010)
| Kommentar Fra : Peter Knutsen |
Dato : 13-07-10 15:10 |
|
On 13/07/2010 14:09, Birger Sørensen wrote:
> Peter Knutsen har bragt dette til verden:
>> Jeg har kigget lidt i forskellige wikitext-dokumenter, og det ser ud
>> som om man ikke kan styre text-alignment, altså
>> højre-/venstre-/center-justering, på basis af kolonner (columns),
>> sådan at f.eks. 1. og 3. kolonne i en tabel skal være venstrejusteret
>> og 2. kolonne centreret.
>>
>> Det ser ud som om man kun kan definere det for hele tabellen, for én
>> række ad gangen, eller for den enkelte celle.
>>
>> Wikitext bliver fortolket om til HTML af wikisoftwaren, så mit
>> spørgsmål er dybest set, om det i HTML kan lade sig gøre at definere
>> text-alignment på kolonnebasis eller ej?
>>
>> De "løsninger" jeg har set går på at man definerer én alignment for
>> hele tabellen, og så går man ind i hver enkelt celle, der skal alignes
>> på en anden måde, og specificerer hvad man vil have. Og det strider
>> altså mod min dovenskab.
>>
>> (Tabel/border-tingen vender jeg tilbage til snart. Nu har jeg jo fået
>> nogle links at klikke på.)
>
> Nu bevæger du dig ud i noget med selectors, og det er måske lidt meget
> CSS at kaste sig ud i, for en "begynder". Men det skal - i hvert fald
> teoretisk - kunne lade sig gøre.
> http://www.w3.org/TR/CSS21/selector.html
>
> Jeg har tilføjet lidt på http://bbsorensen.com/test/tabel/ der skulle
> tydeliggøre:
> td:first-child, td:first-child+td+td {
> text-align : right;
> }
Første og 3. kolonne er højreorienteret, gætter jeg på, og et kig på dit
link viser at jeg har ret.
> td:first-child+td {
> text-align : center;
> }
2. kolonne er centreret. Også rigtigt gættet.
> td:first-child+td+td+td {
> background-color : #00FF00;
> }
Og 4. kolonne er med grøn baggrund. 5. kolonne er ikke nævnt, så den er
nok bare almindelig.
Helt ulogisk er det jo ikke.
> Men kun testet i FF og IE8.
Det er sådan set også godt til mig. I hvert fald indtil jeg får købt en
smartphone og gerne vil kunne læse i min wiki med den. Så kommer jeg
muligvis på andre tanker.
Tekstjusteringen er noget jeg helst vil definere for forskellige tabeltyper.
Den del af min CSS der gælder tabeller generelt ser således ud:
table{
border:inset 1px #999970;
border:1px inset;
border-spacing:4px;
#spacing:2px
}
td, th{
border:inset 1px #999970;
border:1px inset;
padding:2px;
empty-cells:hide;
text-align:left;
}
Hvis jeg nu hugger lidt fra noget Marin Ploug skrev til mig, ovre i den
forrige tråd:
table.tabelstandard
{
border:1px solid #000000;
border-spacing:3px;
padding:3px;
}
....Og jeg er tastaturdoven, så jeg vil gerne have at det navngivne
tabellayout skal hedde mit (som stå for "Magic ITems", altså magiske
genstande, tryllesværd, magiske ringe og lignende ting fra
fantasy-romaner og -rollespil, og som står beskrevne i tabeller med 4
kolonner)) så bliver det vel sådan her:
table.mit
{
td:first-child, td:first-child+td+td {
text-align : right;
}
td:first-child+td, first-child+td+td+td {
text-align : left;
}
}
Det burde gøre at 1. og 3. kolonne er højreorienterede, og 2. og 4.
kolonne er venstreorienterede.
Jeg vil smide ovenstående ind i mit CSS, og melde tilbage.
--
Peter Knutsen
| |
Peter Knutsen (13-07-2010)
| Kommentar Fra : Peter Knutsen |
Dato : 13-07-10 15:16 |
|
On 13/07/2010 16:09, Peter Knutsen wrote:
> Jeg vil smide ovenstående ind i mit CSS, og melde tilbage.
Det gjorde ingen forskel. Nu ser den del af min CSS, der har med
tabeller at gøre, således ud:
table{
border:inset 1px #999970;
border:1px inset;
border-spacing:4px;
}
td, th{
border:inset 1px #999970;
border:1px inset;
padding:2px;
empty-cells:hide;
text-align:left;
}
table.mit
{
td:first-child, td:first-child+td+td {
text-align : right;
}
td:first-child+td, first-child+td+td+td {
text-align : left;
}
}
Har jeg gjort det forkert, m.h.t. først at forsøge at definere hvordan
alle tabeller skal se ud, og derefter hvordan typen "mit" skal se ud?
Hvis ja, hvordan skal det så gøres i stedet?
--
Peter Knutsen
| |
Birger Sørensen (13-07-2010)
| Kommentar Fra : Birger Sørensen |
Dato : 13-07-10 16:00 |
|
Peter Knutsen formulerede tirsdag:
> On 13/07/2010 16:09, Peter Knutsen wrote:
>
>> Jeg vil smide ovenstående ind i mit CSS, og melde tilbage.
>
> Det gjorde ingen forskel. Nu ser den del af min CSS, der har med tabeller at
> gøre, således ud:
>
> table{
> border:inset 1px #999970;
> border:1px inset;
> border-spacing:4px;
> }
>
> td, th{
> border:inset 1px #999970;
> border:1px inset;
> padding:2px;
> empty-cells:hide;
> text-align:left;
> }
>
> table.mit
> {
> td:first-child, td:first-child+td+td {
> text-align : right;
> }
> td:first-child+td, first-child+td+td+td {
> text-align : left;
> }
> }
>
> Har jeg gjort det forkert, m.h.t. først at forsøge at definere hvordan alle
> tabeller skal se ud, og derefter hvordan typen "mit" skal se ud? Hvis ja,
> hvordan skal det så gøres i stedet?
Man kan ikke neste CSS, så prøv med
table.mit td:first-child, table.mit td:first-child+td+td {
text-align : right;
}
table.mit td:first-child+td, first-child+td+td+td {
text-align : left;
}
text-align:left; er svjh default, så du behøver kun angive dem du vil
have anderledes - med mindre du et eller andet sted bruger en generel
anderledes CSS. Ellers kan du indsætte den generelle i en klasse for
td:
td {
text-align : left;
}
så vil alle der ikke er angivet noget andet for, blive centreret til
venstre.
Der er rigeligt at se til - og det man kan gøre generelt letter
tingene, og man behøver ikke angive de generelle i specialtilfælde..
Hvis du forstår ^^
Birger
--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk
| |
Peter Knutsen (15-07-2010)
| Kommentar Fra : Peter Knutsen |
Dato : 15-07-10 14:00 |
|
On 13/07/2010 17:00, Birger Sørensen wrote:
> Man kan ikke neste CSS, så prøv med
> table.mit td:first-child, table.mit td:first-child+td+td {
> text-align : right;
> }
> table.mit td:first-child+td, first-child+td+td+td {
> text-align : left;
> }
Tak, det virkede!
> text-align:left; er svjh default, så du behøver kun angive dem du vil
> have anderledes - med mindre du et eller andet sted bruger en generel
> anderledes CSS. Ellers kan du indsætte den generelle i en klasse for td:
Det ser ikke ud som om der er noget i en anden CSS der overrider at
teksten som default skal være venstrejusteret, men jeg vil lige afprøve
i de tre andre browsere, for at være sikker.
Internet Exploder gør som den skal, men Chrome og Opera nægter at aligne
(jeg har også fået rettet ind med vertical align i cellerne nu). I
øvrigt har de to browsere også problemer med at adlyde ordren fra min
CSS om at vise border, men de problemer vælger jeg at vente med at
håndtere, indtil min wiki går online næste måned. Det er simpelthen for
bøvlet.
> td {
> text-align : left;
> }
> så vil alle der ikke er angivet noget andet for, blive centreret til
> venstre.
> Der er rigeligt at se til - og det man kan gøre generelt letter tingene,
> og man behøver ikke angive de generelle i specialtilfælde.. Hvis du
> forstår ^^
Jo, jeg forstår godt, og jeg vil selvfølgelig også gerne have min CSS så
simpel som muligt.
--
Peter Knutsen
| |
Jørgen Farum Jensen (13-07-2010)
| Kommentar Fra : Jørgen Farum Jensen |
Dato : 13-07-10 22:52 |
|
Peter Knutsen skrev:
> Jeg har kigget lidt i forskellige wikitext-dokumenter, og det ser ud som
> om man ikke kan styre text-alignment, altså
> højre-/venstre-/center-justering, på basis af kolonner (columns), sådan
> at f.eks. 1. og 3. kolonne i en tabel skal være venstrejusteret og 2.
> kolonne centreret.
<table ...>
<col class="col1">
<col class="col2">
<col class="col3">
<tr><td>...</td><td>...</td><td>...</td></tr>
....
</table>
col.col1, col.col3 {text-align:left; }
col.col2 {text-align:center; }
Du bør erhverve dig en bog om html.
Der er mange forhold omkring tabelformatering
som det er vanskeligt at tænke sig til.
Og det er rent BS at hævde at du ikke
kan lave noget online. Grundlaget for
en wiki såvel som enhver anden form for
hjemmeside er altid en html-skabelon,
som du skal kunne lave med html-formateret
mumletekst og dummy billeder.
Alt andet fører som du allerede har
erfaret til endeløse diskussioner og
tågesnak, når vi end ike kan konstatere
om din skabelon validerer.
--
Jørgen Farum Jensen
http://webdesign101.dk
..
| |
Peter Knutsen (15-07-2010)
| Kommentar Fra : Peter Knutsen |
Dato : 15-07-10 14:18 |
|
On 13/07/2010 23:51, Jørgen Farum Jensen wrote:
> Peter Knutsen skrev:
>> Jeg har kigget lidt i forskellige wikitext-dokumenter, og det ser ud
>> som om man ikke kan styre text-alignment, altså
>> højre-/venstre-/center-justering, på basis af kolonner (columns),
>> sådan at f.eks. 1. og 3. kolonne i en tabel skal være venstrejusteret
>> og 2. kolonne centreret.
>
> <table ...>
> <col class="col1">
> <col class="col2">
> <col class="col3">
> <tr><td>...</td><td>...</td><td>...</td></tr>
> ...
> </table>
Så bliver det jo netop *ekstremt* besværligt når wikiens mindre kyndige
brugere skal oprette tabeller, og det skal være så nemt for dem som
overhovedet muligt (det er sådan set hele pointen ved en wiki: at den
skal være nem at redigere i), hvilket opnås ved at jeg bruger Birger
Sørensens løsning.
Så skal dem der vil oprette tabeller i min wiki desværre huske at skrive
class="mit", men de skal kun skrive det én gang pr tabel, i stedet for
en gang for hver kolonne.
> col.col1, col.col3 {text-align:left; }
> col.col2 {text-align:center; }
>
> Du bør erhverve dig en bog om html.
> Der er mange forhold omkring tabelformatering
> som det er vanskeligt at tænke sig til.
Jeg synes faktisk jeg har et vist overblik over HTML. Det er CSS der er
vanskeligt (men samtidig attraktivt fordi man så kan styre tingene fra
centralt sted).
Kan du anbefale en god bog om CSS, eller om HTML og CSS? Hvad med de
IDG-hæfter man kan eller kunne købe på bl.a. posthusene? Er de gode?
> Og det er rent BS at hævde at du ikke
> kan lave noget online. Grundlaget for
> en wiki såvel som enhver anden form for
> hjemmeside er altid en html-skabelon,
> som du skal kunne lave med html-formateret
> mumletekst og dummy billeder.
En wiki kræver PHP5 og MySQL for at kunne køre, og det har mit nuværende
webhotel ikke. Du har sikkert ret i at jeg kan lave et eller andet som
jeg kan smide op på mit nuværende webhotel, en art snapshop a HTML (gå
ind i "view soure" og kopiere, sætte det ind i et HTML-dokument, og
uploade det, og vel også smide CSS'en op på mit nuværnede webhotel og
koble den på det uploadede HTML-dokument) men det forekommer mig
ekstremt besværligt, og desuden overflødigt når de problemer jeg beder
om hjælp til er så generelle. Altså hvordan man styrer forskellige helt
basale aspekter af en tabel. Det er jo på ingen måde avanceret, det jeg vil.
> Alt andet fører som du allerede har
> erfaret til endeløse diskussioner og
> tågesnak, når vi end ike kan konstatere
> om din skabelon validerer.
Bemærk at det ikke er CSS jeg laver fra bunden af. MediaWiki kommer
allerede med en CSS, som jeg så har modificeret, dels ved at ændre
farverne, og dels ved at indsætte en ny sektion der styrer (med success
i FF og EI, men ikke i Chrome og Opera, hvilket jeg vil vende tilbage
til når min wiki er online) hvordan tabellerne i wikien skal se ud.
--
Peter Knutsen
| |
Birger Sørensen (15-07-2010)
| Kommentar Fra : Birger Sørensen |
Dato : 15-07-10 14:50 |
|
Følgende er skrevet af Peter Knutsen:
> On 13/07/2010 23:51, Jørgen Farum Jensen wrote:
>> Peter Knutsen skrev:
>>> Jeg har kigget lidt i forskellige wikitext-dokumenter, og det ser ud
>>> som om man ikke kan styre text-alignment, altså
>>> højre-/venstre-/center-justering, på basis af kolonner (columns),
>>> sådan at f.eks. 1. og 3. kolonne i en tabel skal være venstrejusteret
>>> og 2. kolonne centreret.
>>
>> <table ...>
>> <col class="col1">
>> <col class="col2">
>> <col class="col3">
>> <tr><td>...</td><td>...</td><td>...</td></tr>
>> ...
>> </table>
>
> Så bliver det jo netop *ekstremt* besværligt når wikiens mindre kyndige
> brugere skal oprette tabeller, og det skal være så nemt for dem som
> overhovedet muligt (det er sådan set hele pointen ved en wiki: at den skal
> være nem at redigere i), hvilket opnås ved at jeg bruger Birger Sørensens
> løsning.
>
> Så skal dem der vil oprette tabeller i min wiki desværre huske at skrive
> class="mit", men de skal kun skrive det én gang pr tabel, i stedet for en
> gang for hver kolonne.
>
>> col.col1, col.col3 {text-align:left; }
>> col.col2 {text-align:center; }
>>
>> Du bør erhverve dig en bog om html.
>> Der er mange forhold omkring tabelformatering
>> som det er vanskeligt at tænke sig til.
>
> Jeg synes faktisk jeg har et vist overblik over HTML. Det er CSS der er
> vanskeligt (men samtidig attraktivt fordi man så kan styre tingene fra
> centralt sted).
>
> Kan du anbefale en god bog om CSS, eller om HTML og CSS? Hvad med de
> IDG-hæfter man kan eller kunne købe på bl.a. posthusene? Er de gode?
>
>> Og det er rent BS at hævde at du ikke
>> kan lave noget online. Grundlaget for
>> en wiki såvel som enhver anden form for
>> hjemmeside er altid en html-skabelon,
>> som du skal kunne lave med html-formateret
>> mumletekst og dummy billeder.
>
> En wiki kræver PHP5 og MySQL for at kunne køre, og det har mit nuværende
> webhotel ikke. Du har sikkert ret i at jeg kan lave et eller andet som jeg
> kan smide op på mit nuværende webhotel, en art snapshop a HTML (gå ind i
> "view soure" og kopiere, sætte det ind i et HTML-dokument, og uploade det, og
> vel også smide CSS'en op på mit nuværnede webhotel og koble den på det
> uploadede HTML-dokument) men det forekommer mig ekstremt besværligt, og
> desuden overflødigt når de problemer jeg beder om hjælp til er så generelle.
> Altså hvordan man styrer forskellige helt basale aspekter af en tabel. Det er
> jo på ingen måde avanceret, det jeg vil.
>
>> Alt andet fører som du allerede har
>> erfaret til endeløse diskussioner og
>> tågesnak, når vi end ike kan konstatere
>> om din skabelon validerer.
>
> Bemærk at det ikke er CSS jeg laver fra bunden af. MediaWiki kommer allerede
> med en CSS, som jeg så har modificeret, dels ved at ændre farverne, og dels
> ved at indsætte en ny sektion der styrer (med success i FF og EI, men ikke i
> Chrome og Opera, hvilket jeg vil vende tilbage til når min wiki er online)
> hvordan tabellerne i wikien skal se ud.
Jørgen Farum Jensen har faktisk skrevet nogle udmærkede bøger om CSS og
HTML. De kan lånes på biblioteket, hvis man ikke vil investere
Se også http://webdesign101.dk/
Hans løsning på centreringen, er i øvrigt lige så effektiv som min -
bortset fra at der skal indsættes <col..> i HTML'en. Det kunne man
måske gøre generelt i PHP'en. Hvilket så måske ville resultere i en
lidt mere overskuelig kode. I hvert fald umiddelbart lettere læselig.
Det erlidt svært at kommentere om border etc., uden at have den samme
kode at se på - og hlest se den "in action". Det kan være andre ting
der slår browserne ud af fodslav. Der er ingen problemer med det
eksempel jeg lagde op. Det fungerer i FF, IE8, Opera, Chrome og Safari.
Birger
--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk
| |
|
|