Avatar billede visto Guru
02. juni 2001 - 17:45 Der er 30 kommentarer og
2 løsninger

Manglende tekstformatering i tabel via stylesheet - kun fejl i i Netscape

Når jeg definerer typografier via stylesheets går det udmærket både i Internet Explorer (5.0) og i Netscape (4.08). Når der er tekst i en tabel med to celler er der dog problemer i Netscape. Der er tekst med hver sin formatering i de to celler. Teksten i begge celler vises i Netscape som om den er uformateret. Er der et trick til at klare dette problem? Eller opfører Netscape sig blot sådan?

Jeg arbejder i Frontpage 2000.
Avatar billede prodic Mester
02. juni 2001 - 17:51 #1
Har du prøvet, at lave dit CSS så du anvender TD-tagget og deri definerer dine \"typografier\".
Avatar billede visto Guru
02. juni 2001 - 17:55 #2
til prodic: Jeg ved ikke hvad TD-tagget betyder. Jeg lavede mit første stylesheet i går! Kan du forklare det lidt nærmere?
Avatar billede prodic Mester
02. juni 2001 - 17:59 #3
Ja men jeg kender ikke FP2000 og aner derfor ikke hvad du skal gøre i det program. Ser lige om jeg kan finde noget litteratur omkring det.
Avatar billede visto Guru
02. juni 2001 - 20:12 #4
til prodic: flot!
Avatar billede nebula Nybegynder
02. juni 2001 - 22:13 #5
<td style=\"/*din css kode f.eks:*/ color: black; border: 1px solid red\">din tekst</td>

Jeg tror dog nok at Netscape\'s CSS support i 4.x er ret begrænset, men kan da altid prøve.

PS: <td> = celle tag.
Avatar billede visto Guru
03. juni 2001 - 08:34 #6
Til prodic: Nu er der lige det problem, at jeg ikke har angivet formatering i CSS for tabellen. Og som jeg forstår dit svar, så er forudsætningen at min tabellen er fefineret i stylesheetet?
Jeg har for et par dage siden haft et spørgsmål om hvordan man gør dette, se http://www.eksperten.dk/spm/77740
men fik ikke klaret problemet her, så jeg har arbejdet videre med en almindelig tabel, der altså er CSS-uafhængig, og det er i denne at problemet er. Men jeg vil da allerhelst lave tabelformateringen i stylesheetet. Hvis du ved hvor jeg kan læse hvordan man gør det, må deu gerne fortælle mig det.
Avatar billede nebula Nybegynder
03. juni 2001 - 09:03 #7
eller som det her:

<style>
.test { /*din css kode f.eks:*/ color: black; border: 1px solid red }
</style>
<td class=\"test\">din tekst</td>
Avatar billede prodic Mester
03. juni 2001 - 14:57 #8
Visto->Såfremt du ikke har defineret andre fonte/tingel tangel for din side og kun bruger CSS til formateringen, vil den pågældende side ikke gå ud fra andet end den kedelige standard opsætning af \"typografien\".
Men prøv nebula\'s svar, for han har fat i den lange ende. Eller har i det mindste forstået hvad jeg forsøger at sige. :-) Du kan desuden også formatere tekst i dit .test - det er det du efterlyser, hvis jeg har forstået dig ret.
Avatar billede visto Guru
04. juni 2001 - 15:17 #9
Jeg har læst jeres kommentarerer mange gange, men forstår ikke, og vil nu prøve at bygge en forståelse op fra grunden trin for trin. For det første forstår jeg ikke at I snakker om tags (<td>). Mig bekendt er det HTML, hvilket - igen mig bekendt - ikke bruges i CSS, der betjener sig af andre typer koder. Så jeg kan ikke få øje på metoden til at angive tabelegenskaber på stylesheet i CSS-sprog. Har jeg ret i at I snakker om HTML-kode på websiden eller hur?
Avatar billede annikadk Nybegynder
04. juni 2001 - 15:23 #10
du skal enten på selve siden angive css\'en, altså de styles der skal bruges, eller lave en ekstern css-side, og så linke til den i html-dokumentet.

TD = en celle i en tabel, og hvis du har css, så skal du linke i tabellen/Cellerne til det css der skal bruges.

Tror du er nødt til at poste det kode du bruger, men så er jeg bange for at du ikke bruger koderne, men \"blot\" laver det i grafisk mode i Frontpage.
Har jeg ret??
Har du mulighed for at smide det på nettet evt, så man kan se koden og dermed hjælpe dig???

Husk forresten at du kan definere css\'en i den enkelte celle ved at højreklikke på den - egenskaber... Derinde er der typografi.

Avatar billede prodic Mester
04. juni 2001 - 21:51 #11
td  { color: black; font-style: normal; font-weight: normal; font-size: 10pt; line-height: normal; font-family: Verdana }

Sådan kan du angive tekst-typografien i dit CSS-dokument.

Ved ikke om det hjælper. :-)
Avatar billede visto Guru
05. juni 2001 - 09:28 #12
Jeg tog for givet, at CSS bruges som det annikadk kalder ekstern css side, som jeg linker alle websider til, så layout styres fra stylesheet. Det er det jeg gør.
Jeg har lavet et par minimalistiske eksempel-sider, som demonstrerer problemet. Koderne følger herunder. Jeg vil prøve at smide det på nettet senere, hvis der til den tid er brug for det.

Koden for stylesheet ser sådan ud:

.overskrift1 { color: #3A6411; font-family: Arial Black; font-size: 18 pt; text-align: center;
              font-weight: bold }
.opdatering  { font-family: Lucida Sans; font-size: 10 pt; color: #697812; text-align: right }
.br_tekst    { font-family: Arial; font-size: 12 pt }

body {
    margin-top: 6px;
    background-color: #FBFFEC;
    background-image: url(\"baggrund.gif\");
        }

Koden for en side, der er linket til stylesheet ser sådan ud:

<html>

<head>
<meta http-equiv=\"Content-Language\" content=\"da\">
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1252\">
<meta name=\"GENERATOR\" content=\"Microsoft FrontPage 4.0\">
<meta name=\"ProgId\" content=\"FrontPage.Editor.Document\">
<title>Test</title>
<link rel=\"stylesheet\" type=\"text/css\" href=\"typografi_test.css\">
</head>

<body>

<table border=\"1\" width=\"100%\" bordercolorlight=\"#FFCC66\" bordercolordark=\"#CC3300\">
  <tr>
    <td width=\"50%\">
      <p class=\"overskrift1\">Overskrift</td>
    <td width=\"50%\">
      <p class=\"opdatering\">05-06-01</td>
  </tr>
</table>
<p class=\"br_tekst\">Dette er så brødteksten</p>

</body>

</html>
Avatar billede annikadk Nybegynder
05. juni 2001 - 09:39 #13
ser du skriver 18 pt osv.. det skal være 18pt for at virke i NS/mozilla/Opera, så vær med mellemrum så burde det virke!
Avatar billede annikadk Nybegynder
05. juni 2001 - 09:43 #14
hovsa.. ikke det der er buggen (glemte hvad ?? var *gg*)

<td width=\"50%\" class=\"overskrift1\">
      Overskrift</td>
    <td width=\"50%\" class=\"opdatering\">
      05-06-01</td>
     
Avatar billede annikadk Nybegynder
05. juni 2001 - 09:44 #15
altså skal din class=\"\" være i TD-tagget, dette burde hjælpe.
Du afslutter jo heller ikke dine <P>\'er?
Avatar billede visto Guru
05. juni 2001 - 11:12 #16
Til annikadk: Sådan! - Nu ses formateringen korrekt i tabellen også i Netscape. Det var faktisk tilstrækkeligt at fjerne mellemrummet mellem skriftstørrelsesangivelsen og pt. Til andre der evt. måtte lave dette i Frontpage kan jeg dermed sige: Når du har oprettet dine typografier i Frontpage, skal du bagefter manuelt rettet fx 18 pt til 18pt
Nu er probelemt imidlertid at brødteksten ikke formateres! - Hvad gør jeg forkert?

Koden på eksempel-websiden er nu rettet til følgende:

<body>

<table border=\"1\" width=\"100%\" bordercolorlight=\"#FFCC66\" bordercolordark=\"#CC3300\">
  <tr>
  <td width=\"50%\" class=\"overskrift1\">
      Overskrift</td>
    <td width=\"50%\" class=\"opdatering\">
      05-06-01</td>
  </tr>
</table>

<p class=\"br_tekst\">Dette er så brødteksten</p>

</body>
Avatar billede annikadk Nybegynder
05. juni 2001 - 11:30 #17
normalt ville jeg lave brødteksten om i din css-fil, så den står som .body
så vil slt der ikke er i tabeller rette sig efter den, uden at du skal angive class=\"\" omkring brødteksten
Avatar billede visto Guru
05. juni 2001 - 12:28 #18
Jeg har brug for forskkelige typer formatering af brødtekst, fx en formatering for første afsnit, en for alt det andet. Så én brødtekstformatering er ikke tilstrækkelig. Så den løsning du angiver kan ikke bruges i mit tilfælde.
Avatar billede annikadk Nybegynder
05. juni 2001 - 12:49 #19
nej oki..
det kan jeg godt se så..

men dvs. din css ser sådan ud:
.br_tekst { font-family: Arial; font-size: 12pt }

og koden
<p class=\"br_tekst\">Dette er så brødteksten</p>

????

DEN skal jeg lige tænke over.. bruger ikke selv flere brødtekster, men kun i tabeller...
Avatar billede annikadk Nybegynder
05. juni 2001 - 12:54 #20
så på builder.dk hvad de bruger, så prøv evt. <span class=\"m\"> stedet for <p class=\"m\">
Avatar billede visto Guru
05. juni 2001 - 13:38 #21
Det gør ingen forskel for mig om det hedder brødtekst eller noget andet, blot jeg kan formatere differentieret på min side.
Jeg får en fornemmelse af at der er et eller andet jeg helt har misforstået. Det må da på en eller anden måde være enormt enkelt, at et afsnit på en side skal formateres med henvisning til én skrifttype defineret i stylesheet, et andet afsnit formateres med henvisning til en anden skrifttype defineret i stylesheet. Eller tager jeg helt fejl?
Er det det der <p..... </p> der driller? Jeg har ikke helt forstået hvad de gør godt for, idet de jo automatisk indsættes af Frontpage, når jeg klikker mig frem til en brugerdefineret (dvs defineret af mig) formatering, uanset om det tilfældigvis er den jeg bruger til brødtekst eller til andet.
Avatar billede annikadk Nybegynder
05. juni 2001 - 13:41 #22
jeg bruger _slet_ ikke de der P\'er.. de generer mig (spørg mig ikke om hvorfor de gør det)

Men personligt ville jeg smide det i tabeller når der er flere genrer af brødtekster.

Det andet kan jeg ikke lige se løsningen på må jeg sige.

Avatar billede visto Guru
05. juni 2001 - 16:04 #23
Jeg tror lige jeg opsumerer, hvad problemet er, hvis andre har lyst til at være med:
Jeg har på en webside tekst i to celler i en tabel plus tekst udenfor tabellen. Den formatering, som websiderne burde hente fra stylesheet ses kun i Internet Explorer, ikke i Netscape.
Når jeg ændrer angivelsen af skriftstørrelse i eksternt stylesheet fra fx 12 pt til 12pt (altså fjerner mellemrummet) ses formateringen korrekt i tabellens celler, men ikke udenfor.
Hvad skal jeg gøre for at få teksten udenfor tabellerne vist korrekt?

til anikadk: Jeg skal nok lade være med at spørge om de p\'er :-) Selv har jeg en aversion mod at bruge tabeller mere end allerhøjst nødvendigt. Så jeg vil altså prøve om jeg kan få klaret problemet uden at skulle proppe alt i tabeller på ca. 75 web-sider.

I øvrigt får jeg et stærkt ønske om at Microsoft og Netscape kunne blive enige om en standard, så man blev fri for at bruge sin pinseferie på at få klaret et problem i forhold til den ene browser.
Avatar billede prodic Mester
05. juni 2001 - 16:53 #24
Jeg anvender som regel bare dette tag til min \"brød-tekst\"
body { color: black; font-size: 10pt; font-family: Verdana }

OG det virker da...

Så bruger jeg denne :
td    { color: black; font-style: normal; font-weight: normal; font-size: 10pt; line-height: normal; font-family: Verdana }

til mine tabeller. Og det virker såmænd også.

Har du prøvet med det??
Det virker både på MAC/PC og i IE/NS :-)


OG MS/Netscape er enige om en standard - IE følger den bare ikke så strengt som NetScape gør. :-)
Standarden ser sådan her ud :
http://www.w3.org/TR/REC-CSS2/
TUNG læsning.
Avatar billede visto Guru
05. juni 2001 - 17:55 #25
Til prodic: Jeg har prøvet din sidste model af. Også her formateres cellerne i tabellen korrekt, mens teksten uden for cellerne ikke formateres. Og stadig kun i Netscape.Så der må være et eller andet jeg gør forkert både i din og min model.
Jeg sender derfor koderne til det jeg har lavet i din model. Hvad er der galt her?

stylesheet:

body { color: black; font-size: 14pt; font-family: Verdana }

td    { color: black; font-style: normal; font-weight: normal; font-size: 20pt; line-height: normal; font-family: Verdana }

webside linket til stylesheet:

<table border=\"1\" width=\"100%\" bordercolorlight=\"#FFCC66\" bordercolordark=\"#CC3300\">
  <tr>
  <td width=\"50%\" <p>Overskrift
  </td>
    <td width=\"50%\" <p>05-06-01
      </td>
  </tr>
</table>

<p>Dette er så selve teksten</p>
Avatar billede annikadk Nybegynder
05. juni 2001 - 18:07 #26
hvad har du i din body mv??
regner ikke med at der er noget der, men for at være heeelt sikker...
Avatar billede visto Guru
05. juni 2001 - 18:45 #27
Imellem body-tags er der kun det som står under \"webside linket til stylesheet:\" ovenfor, altså nævnte tabel + nævnte minitekst. Intet andet.
Avatar billede prodic Mester
06. juni 2001 - 17:40 #28
p { color: black; font-size: 14pt; font-family: Verdana }

Virker det så ikke hvis du sætter den ind også??
Avatar billede visto Guru
07. juni 2001 - 10:36 #29
til prodic: jo, når jeg indsætter din linje virker det!
Det var dermed dels svaret fra annikadk om intet mellemrum i skriftstørrelsesdefinition og dit sidste svar, der klarede problemet.

Det med at lave forskellige brødskrifts-underdefinitioner (fx med forskelligt indryk af første linje), som jeg tidligere efterlyste, klares på flg. måde:
Hvis brødteksten i stylesheet defineres som

p  { color: black; font-size: 14pt; font-family: Verdana }

så kan en underskriftstype defineres som fx

.p_med_indryk { text-indent: 20 }

Koderne på websiderne, hvor disse definitioner anvendes kan se sådan ud:

<p>Dette er så brødteksten</p>
   
<p class=\"p_med_indryk\">Og en anden formatering på baggrund af brødteksten</p>

Tak for hjælpen!

Afslutter hermed dette spørgsmål.

visto
Avatar billede visto Guru
07. juni 2001 - 10:39 #30
Jeg prøvede at dele points lige over, men kom til at snyde dig - prodic - for et point - beklager!
Avatar billede prodic Mester
07. juni 2001 - 10:42 #31
Visto - det er OK. Jeg har fået 14.5 point, men du kan kun se at jeg har fået 14. Det er noget med afrundingsreglerne herinde.
Du kan istedet for <p class=\"p_med_indryk\"> bare vælge at bruge Span til dine classes - lidt nemmere syntes jeg, men jeg bruger heller aldrig <P>-taget til noget...
Avatar billede visto Guru
07. juni 2001 - 13:07 #32
Til prodic: Inden jeg går i gang med at implementere nogetsomhelst på mit websted, er jeg MEGET åben overfor gode, nemmerere og mere elegante løsninger. Og jeg forstår, at både du og annikadk ikke kan lide eller ikke bruger <p>. Jeg har brugt dem, fordi jeg ikke ved hvad jeg ellers skal gøre.
Kan du (eller en anden) \"oversætte\" mine koder, som jeg nu har fået til at virke, til noget nemmere - dvs uden <p> forstår jeg - ? Hvordan skal jeg ændre stylesheet og websider i forhold til nuværende koder? (Jeg gør opmærksom på at point er uddelt.)

Nuværende koder:

stylesheet:

.overskrift1 { color: #3A6411; font-family: Arial Black; font-size: 18pt; text-align: center;
              font-weight: bold }
.opdatering  { font-family: Lucida Sans; font-size: 10pt; color: #697812; text-align: right }

p            { color: black; font-size: 12pt; font-family: Verdana }

.p_med_indryk { text-indent: 20 }

webside:

<body>

<table border=\"1\" width=\"100%\" bordercolorlight=\"#FFCC66\" bordercolordark=\"#CC3300\">
  <tr>
  <td width=\"50%\"
    class=\"overskrift1\">Overskrift
        </td>
    <td width=\"50%\"
      class=\"opdatering\">05-06-01
      </td>
  </tr>
</table>

<p>Dette er så brødteksten</p>

     

<p class=\"p_med_indryk\">Og en anden formatering på baggrund af brødteksten</p>

</body>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Alle kurser indenfor Microsoft 365 – både til begyndere og øvede.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester