Avatar billede ohmish Nybegynder
28. november 2003 - 09:20 Der er 41 kommentarer og
3 løsninger

XHTML 1.0 strict

Yo experts!

Kort og kontant:
Jeg har en Flashfilm på en side i XHTML 1.0 Strict, som validerer perfekt, men kun hvis flashdelen fjernes.
Jeg har prøvet et "hack" bla. uden <embed>halløj m.m., men det virkede ikke optimalt selvom siden så fulgte "standarden"

Funktionalitet ER jo vigtigere end standard.

Så derfor:

Hvad sker der ved at jeg lader det være og W3C melder fejl mht. min side?
Vil nogle browsere reagere på flash-objektet, fordi det er ugyldigt? Andre konsekvenser?
Avatar billede bamzen Nybegynder
28. november 2003 - 09:38 #1
Standarder er jo til for at fortælle en læser, eksempelvis en din webbrowser hvilket kode den skal kunne læse og hvordan... Internet Explorer vil sandsynligvis overleve... men man kan risikere at validerer siden ikke op mod w3c, vil der findes læsere der ikke er istand til at se siden.

Sandsynligvis ville det være bedre for dig hvis du ikke kørte strict xhtml
Avatar billede ohmish Nybegynder
28. november 2003 - 09:51 #2
tja. men hva så? ingen doctyper tillader så vidt jeg ved <embed>
Avatar billede bamzen Nybegynder
28. november 2003 - 09:52 #3
html 3.2 mener jeg da gør, og vel også 4,,, uden at jeg har tid til at gå ind og tjekke op
Avatar billede hoejrup Nybegynder
28. november 2003 - 09:55 #4
Så skal du anvende Transitional i stedet for Strict.

/per
Avatar billede ohmish Nybegynder
28. november 2003 - 09:58 #5
xhtml eller html transitional?
jeg vil jo helst holde det i xhtml...
Avatar billede hoejrup Nybegynder
28. november 2003 - 10:03 #6
Jeg har kodet mit website i xhtml 1.0 transitional, og min xhtml fil
med flash bliver valideret korrekt.

/per
Avatar billede ohmish Nybegynder
28. november 2003 - 10:14 #7
ok, nice :)

kan du smide noget kode, for en bunke points?
Avatar billede ohmish Nybegynder
28. november 2003 - 10:14 #8
med mindre du bruger alistapart.com hacket. det virker ikke optimalt
Avatar billede hoejrup Nybegynder
28. november 2003 - 10:55 #9
Her er koden, men swf filen bliver desværre ikke afviklet. :-)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="da">
<head>
<link rel="stylesheet" type="text/css" href="style.css" />
<title>Test</title>
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Cache-Control" content="no-store" />
<meta http-equiv="Content-type" content="text/html;charset=iso-8859-1" />
<meta name="robots" content="NoIndex" />
</head>
<body id="yatzy">
<!-- URL's used in the movie-->
<!-- text used in the movie-->
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0"
id="PokerS" width="550" height="400">
<param name="movie" value="testx.swf" />
<param name="quality" value="high" />
</object>
</body>
</html>
Avatar billede bamzen Nybegynder
28. november 2003 - 11:07 #10
Min personlige overbevisning er, at kan man ikke overholde standarden 100% (altså i dette tilfælde strict specificationen), så bør man finde den standard man opfylder 100%,,, xhtml 1.0 transitional er en udgave af html, som tillader gængse "fejl" i koden som ikke var fejl i html 4.x

Du kan risikere at blive udsat for at en fremtidig læser ikke vil læse dit transitional, men kun en valideret strict kode....

Hvis ikke du har en helt speciel grund til at bruge xhtml, er det, efter min overbevisning, bare en besværlig kodeform i forhold til html 4. Det er stadig for tidligt for browsere at skippe understøttelse af html 4
Avatar billede ohmish Nybegynder
28. november 2003 - 11:20 #11
hoejrup> du har jo egentlig bare fjernet <embed> tagget. jeg snakker flere niveauer dybere end det. Den kode du viser vil resultere i ingenting, i rigtig mange browsere. ældre som nyere. bla. Mozilla.

bamzen> tja. jeg går stadig og overvejer hvad der nu er bedst.
Men.. xhtml kan ses i næsten alle browsere, siden vises hurtigere. og så går man fremtiden i møde :)
Avatar billede bamzen Nybegynder
28. november 2003 - 11:27 #12
hvis du kigger på mange browsere, er de først begyndt at understøtte xhtml,,, slet ikke nær w3c's standard....
Avatar billede bamzen Nybegynder
28. november 2003 - 11:28 #13
Mange af de ting der gør at du føler din side vises hurtigere med xhtml strict, kan du også lave med html, ved at angive korrekte størrelser på ALT, ligesom du er tvunget til med xhtml strict
Avatar billede Slettet bruger
28. november 2003 - 11:34 #14
Hejsa.  :-)

Jeg forstår ikke at det kan give så store problemer, for min kode virker udemærket hos mig. Og det er tilmed i XHTML 1.1 strict.

Her er et af mine eksempler:
<?xml version="1.1" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="da">
<head>
<title>extend.dk</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="content-language" content="da" />
</head>
<body>
<table width="217" border="0" cellpadding="0" cellspacing="0">
    <tr>
      <td>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" style="width: 150px; height: 75px" title="extend.dk" id="extend"><param name="movie" value="forward.swf" /><param name="quality" value="high" /></object>
          </td>
    </tr>
</table>

</body>
</html>
Avatar billede Slettet bruger
28. november 2003 - 11:38 #15
Og jeg chekker mine filer herigennem:
http://validator.w3.org/
Avatar billede ohmish Nybegynder
28. november 2003 - 11:39 #16
extend> ja, du har jo heller ikke <embed> med, som ikke er gyldig standard, men nødvendig i en masse browsere
Avatar billede ohmish Nybegynder
28. november 2003 - 11:39 #17
har du prøvet at åbne din side med andet end Explorer??
Avatar billede ohmish Nybegynder
28. november 2003 - 11:41 #18
et flot traktorhjul er trods alt ikke en traktor
Avatar billede Slettet bruger
28. november 2003 - 11:45 #19
-->ohmish:
For det første, er standarden jo til, for netop at gøre koden browser-uafhænig. Så hvis koden ikke virker for nogle af jer, er det fordi at I bruger nogle dårlige browsere og/eller i nogle dårlige versioner (typisk IE 4 og Netscape 4).

For det andet, virker koden selvfølgelig i alle browsere som følger standarden.
Det er jo netop det som er formålet med at validere.  :-)

Desuden tester/arbejder jeg selv i primært Opera 7.2, dernæst i Netscape 7.1 og sidst i IE 6.0.

Men virker koden ikke i nogle af jeres browsere???
Avatar billede ohmish Nybegynder
28. november 2003 - 11:45 #20
som man si'r.. hehe :)

jeg er bare ved at få spat. jeg skal levere en flash forside til et stort firma.. der skal det selvfølgelig virke for alle
Avatar billede bamzen Nybegynder
28. november 2003 - 11:46 #21
Men validerer ikke 100% korrekt med w3c's validator!

i xhtml hedder det ikke <html> men <xhmtl> for bar eat nævne den simpleste fejl...
Avatar billede bamzen Nybegynder
28. november 2003 - 11:49 #22
Citat:

For det andet, virker koden selvfølgelig i alle browsere som følger standarden.
Det er jo netop det som er formålet med at validere.  :-)

Citat slut...

Det er korrekt hvis og såfremt at programmørene bag web-browseren har kunnet implementere det... det er der ingen der siger de skal, vil eller kan...

Alle browser fabrikanter har vist deres evne til at lave deres egne små finurligheder ved standarderne. Så nej, du kan ikke være sikker på at en siden som validerer som xhtml strict, også vises korrekt i en browser der forstår xhtml
Avatar billede Slettet bruger
28. november 2003 - 11:50 #23
Og det skal lige tilføjes:
De browsertest jeg foretager, er på en Windowsplatform.
Avatar billede ohmish Nybegynder
28. november 2003 - 11:51 #24
nææh. og sådan kan man blive ved... indtil standarden bliver fulgt. den dag er det ret meget sjovere at være webdesigner
Avatar billede ohmish Nybegynder
28. november 2003 - 11:52 #25
Mozilla f.eks kræver <embed> tagget som du har fjernet.
har testet..
Avatar billede Slettet bruger
28. november 2003 - 11:55 #26
-->bamzen:
Ja, alle browser fabrikanter har deres egen måde at tolke standarden på, det er det som gør det så pokkers besværligt for os udviklere.  :-(

Men da vi ikke kan beordre browserne at rette på fejlene, kan vi kun gøre vores bedste for at gøre koderne så browser-uafhænige som muligt. Og det er at følge standarden.

Alternativt kan vi foretage en browser-aflæsning på index/default-siden, og redirecte brugeren til et websted til er specielt tilpasset den enkelte browser. Og hvilken kunde vil betale for det?
Avatar billede Slettet bruger
28. november 2003 - 11:58 #27
-->ohmish:
Ok, men så spørg dig selv, hvor mange alm. brugere (ikke udviklere!) som bruger Mozilla. Det er under 0.1 %, er jeg ret sikker på.
Så igen: Spørg kunden, om kunden vil betale det extra for at den sidste del af brugerne også skal kunne se en flash...  :-)
Avatar billede Slettet bruger
28. november 2003 - 12:01 #28
-->ohmish:

Lige for at komme til kernen og det konkrete:

Dit spørgsmål gik ud på, at få en Flash-animation igennem en XHTML 1.0 strict-validerering, og jeg har givet dit et brugbart svar. Min kode validerer fint, tilmed i XHTML 1.1 strict.  :-)
Avatar billede ohmish Nybegynder
28. november 2003 - 12:01 #29
tja. jeg er jo egentlig ikke uenig med dig :)

meen.. al den seneste snak om standard kan jo nok mærkes af browserfabrikanterne. det er trods alt bedre nu end før.. men langt fra godt nok.

hellere stædighed fremfor dit forslag med redirect alt efter browsertype
Avatar billede ohmish Nybegynder
28. november 2003 - 12:07 #30
det svære er at retfærdiggøre fravalget af browser for nogle besøgende. "jamen jeg kan da se flash alle steder!?" ville de nok tænke og skide "standarder" et stykke.
Avatar billede bamzen Nybegynder
28. november 2003 - 12:08 #31
Citat

Min kode validerer fint, tilmed i XHTML 1.1 strict.  :-)

Citat slut

Nej, din kode validerer ikke fint.... den validere, men ikke fint... w3c kommer med flere kommentarer du burde ændre....!
Avatar billede bamzen Nybegynder
28. november 2003 - 12:09 #32
Derfor giver den dig heller ikke linket til xhtml strict grafikken, men til xhtml grafikken ;-)
Avatar billede Slettet bruger
28. november 2003 - 12:10 #33
-->ohmish:
Ja, løsningern med redirect alt efter browsertype, er ved gud også den tunge vej at gå. Men hvis kunden absolut VIL have at det skal virke i Mozilla også, så er der vist ingen anden vej at gå. Men så koster det også knapper. :-)

Vedr. validering, er XHTML netop udviklet dels for at undgå de enkelte browsers underlige fortolkninger (der er fjernet mange, mange tags i XHTML 1.1 strict!), dels for at gøre websiderne tilgængelige i WAP-telefoner, og dels for at tage en blid overgang til XML.  :-)
Avatar billede Slettet bruger
28. november 2003 - 12:13 #34
-->bamzen:
Ja, den er ikke 100% vandtæt, men den virker!  :-)
Avatar billede bamzen Nybegynder
28. november 2003 - 12:17 #35
Så er nok også mere korrekt at kalde den transitional, (som den kan valideres fint som), og ikke strict
Avatar billede Slettet bruger
28. november 2003 - 12:19 #36
...eller kan man bare lege lidt med doc-type.  :-)
Avatar billede ohmish Nybegynder
28. november 2003 - 12:23 #37
hmm.. xhtml transitional er vel mere standard end xhtml strict som jo ikke er standard endnu?
Avatar billede Slettet bruger
28. november 2003 - 12:29 #38
-->ohmish:
Har du prøvet at indsætte koden i et af dine dokumenter med en XHTML 1.0 strict doc-type, og validere koden? Jeg er ret sikker på, at den futter lige igennem.  :-)

Nå, men jeg må ikke bruge mere tid på dette her, jeg skal videre i dagens text.  :-)

Nu har du ihvertfald fået en brugbar kode, og dit problem er blevet løst.  :-))
Avatar billede ohmish Nybegynder
28. november 2003 - 12:33 #39
jep. jeg kører også selv strict, og det virker jo sådan set fint nok. nu laver jeg sgu en lille ydmyg notits til folk der ikke ser flashfilmen

tak for hjælpen, extend og bamzen :)
Avatar billede ohmish Nybegynder
28. november 2003 - 12:48 #40
citat fra macromedia.com:

"The OBJECT tag is used by Internet Explorer on Windows and the EMBED is used by Netscape Navigator (Macintosh and Windows) and Internet Explorer (Macintosh) to direct the browser to load the Macromedia Flash Player. Internet Explorer on Windows uses an ActiveX control to play Macromedia Flash content while all other browser and platform combinations use the Netscape plugin technology to play Macromedia Flash content. This explains the need for two tags."

så man skal lige passe på med, bare at fjerne <embed> tagget uden kompensation..
Avatar billede ohmish Nybegynder
28. november 2003 - 12:50 #41
Avatar billede nikolajdu Nybegynder
29. november 2003 - 17:35 #42
Jeg vil lige pointere at man rent faktisk godt kan få valideret ens kode hvis man ser bort fra netscape 4.x

Den her funker i IE 4+ og alle andre fra version 5 og op.

<object type="application/x-shockwave-flash" data="flash/preloader.swf"
    width="760" height="156">
    <param name="movie" value="flash/preloader.swf" />
      <img src="p/blank.gif" alt="No top Flash" width="760" height="136" />
</object>
Avatar billede ohmish Nybegynder
29. november 2003 - 18:52 #43
nikolajdu> ja, jeg har prøvet den løsning. men der opstår desværre uberegnelige cacheproblemer + en grim objectfirkant i IE inden flashfilmen afspilles
hvis man undlader at loade filmen ind i en loaderfilm, vil IE ikke vise filmen før alt er hentet, og den grimme firkant vises indtil da

nu har jeg alligevel satset på <object> og via php vises <embed> hvis browseren kræver det
Avatar billede nikolajdu Nybegynder
29. november 2003 - 19:14 #44
Ohmish - Cache problemer ja, men hvis du ser hvad jeg har smidt til dig så undgår du det helt.

Du skal som man nu bedst gør med flashfiler dele dem op og aldrig have én stor fil. Den fil du loader på siden skal altid være en preloader der "intet" fylder og som så henter resten af indholdet ind.

gør sådan og hav ingen problemer :))
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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