Gå til innhold

Vevutvikling med åpne standarder


Anbefalte innlegg

Videoannonse
Annonse
Problemet med det er at ikke alle nettleser utviklere var like våkne når dem lærte om standarder og css ;)

Det hinder deg fremdeles ikke i å lage bare et stilark som fungerer i alle nettleserene.

Nettopp. Og derfor kan conditional includes for IE være en god idé. Som tidligere nevnt har jeg ikke nevneverdige problemer med å få ting til å se tilnærmet identisk ut i Opera, Safari og Firefox, det er IE som er problemet. IE sin støtte for CSS er tragisk. Jeg benytter derfor tidvis conditional includes for å løse noen av de verste problemene i IE.

 

I en ideell verden hadde det ikke vært behov for conditional includes, men dessverre er det ikke alltid slik. Jeg er selv svoren tilhenger av å sørge for at HTML/CSS håndteres fornuftig av "alle" user-agents, og det er da også derfor at både Lynx og Mosaic inngår i min testrunde.

 

Men, så tilbake til saken, ja det er fult mulig å lage sider med ett enkelt stilsett som håndteres fint i samtlige browsere, ved bevisst å unngå en rekke uheldige kombinasjoner i CSS som IE ikke støtter, men det kan da være mye vanskeligere å skrive semantisk korrekt og minimalistisk HTML-kode og samtidig få det ønskede visuelle inntrykk.

Lenke til kommentar
Men, så tilbake til saken, ja det er fult mulig å lage sider med ett enkelt stilsett som håndteres fint i samtlige browsere, ved bevisst å unngå en rekke uheldige kombinasjoner i CSS som IE ikke støtter, men det kan da være mye vanskeligere å skrive semantisk korrekt og minimalistisk HTML-kode og samtidig få det ønskede visuelle inntrykk.

Øvelse gjør mester. Etter en stund så er man så vant med IE og dens feil at ting går naturlig.

 

Merk også at i den "virkelige" verden så er det ikke alltids mulig og holde seg til W3C sine spesifikasjoner og man må på godt norsk "svelge et par kameler".

 

Jeg er en sterk tilhenger av W3C og prøver i 90% av tiden min å sørge for at alt fungerer/validerer, men av og til må jeg bare gi f*** grunnet tidspress eller lignende.

Lenke til kommentar

 

Problemene er, som man kan se på validator-resultatet, at vårt annonsesystem ikke gir helt "ren og pen" kode -

 

Det er flere feil enn det, Stefan. Jeg vil anbefale HWBs vevutviklere å gå gjennom listen i artikkelen min, punkt for punkt, og se hva som kan forbedres. Det at annonsesystemet skaper feil er ingen unnskyldning for å la la vær å rette opp alle de andre feilene.

 

Her er litt å gripe fatt i:

 


  •  
  • XHTML-dokumentene serveres med feil MIME-type
     
     
  • Samme stilsett serveres både til mediatypen 'screen' og 'handheld'. Dette gjør sidene helt uleselige på håndsholdte dingser.
     
     
  • Man benytter klasser der semantiske elementer som for eksempel <h2> hører hjemme
     
     
  • Noen har plassert en ekstra <p> på toppen av artikkelen min..(c;
     

 

opera 8(eller var det 7.54?) er vel opera som standard.

 

I Opera 8 ser standard-UA-strengen slik ut:

Mozilla/4.0 (compatible; MSIE 6.0; X11; Linux i686; en) Opera 8.01

Ja, det framsto noe forenklet (i mitt svar).

 

Jeg skal ta ansvar og sender listen din til vår driftsavdeling, så får de ta en titt på det.

 

Takk for tilbakemeldingene, uansett om det er "smekk på lanken" eller ros!

Lenke til kommentar

Du kan aldri benytte ein klasse for å «erstatte» eit semantisk element.

 

Å benytte klasser framfor de semantiske elementene som faktisk finnes er svært dårlig praksis, ja. Følgende kodesnutt, hentet fra HWBs forside:

 

<span class="preambleLink"><a href="http://www.hardware.no/art.php?artikkelid=16051" title="Intel satser på stabilitet og enkel administrasjon">Intel satser på stabilitet og enkel administrasjon</a></span>

 

.. burde selvsagt heller sett slik ut:

 

<h2><a href="http://www.hardware.no/art.php?artikkelid=16051">Intel satser på stabilitet og enkel administrasjon</a></h2>

 

Problemene er, som man kan se på validator-resultatet, at vårt annonsesystem ikke gir helt "ren og pen" kode -

 

Det er flere feil enn det, Stefan. Jeg vil anbefale HWBs vevutviklere å gå gjennom listen i artikkelen min, punkt for punkt, og se hva som kan forbedres. Det at annonsesystemet skaper feil er ingen unnskyldning for å la la vær å rette opp alle de andre feilene.

 

Her er litt å gripe fatt i:

  • XHTML-dokumentene serveres med feil MIME-type
     
  • Samme stilsett serveres både til mediatypen 'screen' og 'handheld'. Dette gjør sidene helt uleselige på håndsholdte dingser.
     
  • Man benytter klasser der semantiske elementer som for eksempel <h2> hører hjemme
     
  • Noen har plassert en ekstra <p> på toppen av artikkelen min..(c;

<span class="preambleLink"></span>

 

Den burde være en h2 ja.

Må si jeg rett og slett har oversett det på et eller annet vis.

 

 

 

MIME-type:

Desverre må det serveres som text/html og ikke application/xhtml+xml siden annonsekoden bryter xml-kompabilitet og siden ikke vil vises i det store og hele i firefox (vet ikke helt hvordan opera takler uriktige xml-dokumenter).

Det irriterer meg utrolig mye at jeg ikke kan sende korrekt MIME-type, men slik er det altså, og lite jeg kan gjøre noe med.

 

Stilsett: Til å begynne med brukte jeg media="screen", men det virker som fullscreenmodus i nettlesere ikke går under screen så jeg forandret det (som en hack) over til media="all" (på hwb er ikke media spesifisert i det store og hele).

(Sendes fullscreen som media="projection" ? eller hva brukes)

MEN, det er da strengt alt ingen direkte feil å ikke spesifisere media for stilsett.

 

En <p> på toppen av artikkelen er der som en liten sikkerhetsmekanisme i tilfelle en journalist skriver i plain tekst ;)

Lenke til kommentar

Desverre må det serveres som text/html og ikke application/xhtml+xml siden annonsekoden bryter xml-kompabilitet og siden ikke vil vises i det store og hele i firefox (vet ikke helt hvordan opera takler uriktige xml-dokumenter).

 

Riktig. Ifølge XML-spesifikasjonen er feil i koden en alvorlig feil som skal føre til at lastingen av dokumentet avbrytes og XML-parseren spytter ut en feilmelding. Både Firefox og Opera gjør dette riktig.

 

Dersom du ikke kan garantere at dokumentene dine er gyldig XML/XHTML når de sendes fra vevtjeneren - hvilket tydeligvis ikke er mulig med deres nåværende annonsesystem - bør du la vær å bruke XML/XHML, og heller benytte HTML4 servert som text/html. Å servere ugyldige dokumenter med XHTML-doctype som text/html er ikke lurt. Min kollega Ian Hickson forklarer hvorfor i sin artikkel «Sending XHTML as text/html Considered Harmful».

 

(Sendes fullscreen som media="projection" ? eller hva brukes)

 

Ja, det stemmer. Så om du vil at stilsettet ditt skal gjelde for alle noenlunde store skjermer, kan du la det gjelde for «screen, projection, tv».

 

Merk at prosjektor-medietypen har støtte for inndeling i sider eller lysbilder, slik at du kan lage PowerPoint-lignende presentasjoner. Det er dog ikke spesielt nyttig på en vanlig nettside - så du kan trygt la ditt vanlige stilsett brukes her.

 

MEN, det er da strengt alt ingen direkte feil å ikke spesifisere media for stilsett.

 

Det stemmer. Om du ikke spesifiserer hvilken medietype et stilsett hører til, lar nettleserne stilsettet gjelde for alle medietyper.

 

Til poenget: de færreste nettsider er utviklet i samsvar med standardene, og enda færre har et eget stilsett for håndholdte dingser. For å gjøre det mulig å lese eksisterende nettsider på håndholdte dingser, reformaterer Opera nettsider til én kolonne ved hjelp av sin småskjermvisning.

 

Problemet på hwb.no forårsakes av følgende: Dersom en nettside er lenket til et stilsett med medietypen «handheld» tror Opera nettsiden allerede er tilpasset små skjermer, og viser den som den er. På hwb.no betyr det at en tusen piksler bred nettside vises uforandret på en 176 piksler bred skjerm. Innholdet blir derfor helt uleselig.

 

En har altså to muligheter om ting skal være leselig på dingser:

1. Å lage et eget stilsett for nettlesere på håndholdte dingser.

2. Å ikke spesifisere noe eget stilsett for håndholdte, men la nettleseren selv reformatere siden..(c:

Lenke til kommentar
Bra artikel :yes: , personlig så er IE problemet så stort at jeg vel anbefale alle med en hjemmeside og lime denne koden inn øverst i index.php filen.

<?php
if (stristr(strtolower($_SERVER['HTTP_USER_AGENT']), "msie") )
{
die('Du bruker Internet Explore. Denne siden kan ikke vises i Internet Explorer.\n venligst skift til Opera(<a href="http://opera.no">opera.no</a>) eller Mozilla Firefox(<a href="http://mozilla.com">mozilla.com</a>)');
}
?>

så er du med på og løse IE problemet.  :thumbup:

Da gjør du jo nettopp som Tim Berners Lee og denne artikkelen advarer mot! Å stenge brukere ute fra informasjonen du har på sidene dine er like idiotisk uansett hvilken nettleser de bruker, hvilke handikapp de har, hudfarge, språk eller religion. Gi alle brukere det samme innholdet og la det heller bli deres problem (og ikke ditt) at det ser litt stygt ut. Så lenge informasjonen er tilgjengelig får i hvert fall brukerne dét de besøker sidene dine for, eller tror du majoriteten av brukerne er mer interessert i hvordan informasjonen ser ut og er pakket inn, enn informasjonen i seg selv?

 

Og selv om det bare er en spøk (noe det er nødt til å være) er det en dårlig en som fort kan føre til at folk følger ditt (om enn dog komiske) eksempel. La alltid informasjonen du har på sidene dine være tilgjengelig for alle!

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...