webForumDet fria alternativet

XHTML strict

17 svar · 673 visningar · startad av Alpha II

Alpha IIMedlem sedan maj 20002 993 inlägg
#1

Jag försöker få en sida att gå igenom w3cs xhtml validerare. Jag har försökt använda strict men får en del problem pga det.

http://validator.w3.org/check?uri=http%3A%2F%2Fwww.henell.com%2Fprogamerz%2F&charset=(detect+automatically)&doctype=(detect+automatically)#line-47

1. Varför får jag fel pga PHPs sessionids?

2. Vad kan jag göra istället för att använda "target"?

3. Align attributet stöds inte heller. Finns det någon annan lösning? Den här koden fungerar men centrerar samtidigt allt innehåll i tabellen:

<p style="text-align: center">
<table width="500">
  <tr>
    <td>text</td>
  </tr>
</table>
</p>

4. Sen så får jag även fel om jag placerar en tabell inom en p tagg. Och fel om jag placerar en img tagg utanför en paragraf.... :l

5. Går attributen "cellspacing="0" cellpadding="0" border="0"" i tabel taggen att skriva som css?

***

Ska jag ge upp idén om att använda strict och gå över till transitional?

PaceMedlem sedan juni 20019 024 inlägg
#2

Re: XHTML strict

1. & ska skrivas som &amp;

2. onclick="window.open(this.href); return false;"

3. Vet ej.

4. Det känner jag inte till.

5. cellspacing = border-collapse:collapse; border-spacing:0px;
cellpadding = padding:1px;
border = border:1px solid #f5f5f5;

Dessutom måste du ha alt-attribut på img-taggar.

Jag funderade också på att använda transitional i stället för strict, men koden blir betydligt bättre med strict. Precis allt onödigt presentationstjafs skalas bort och läggs i css i stället, vilket man tjänar på i längden.

LeonLMedlem sedan dec. 20025 871 inlägg
#3

Du kan inte använda tabeller inuti P-taggar. När det gäller att allt annat i tabellen centreras kan du göra så här:

<p style="text-align: center">
<table width="500">
  <tr>
    <td style="text-align: left;">text</td>
  </tr>
</table>
</p>
jarvkloMedlem sedan juli 20013 378 inlägg
#4

Re: XHTML strict

Alpha II skrev:

1. Varför får jag fel pga PHPs sessionids?

Du måste använda &amp; i länkarna, se http://www.webforum.nu/showthread.php?s=&postid=754590#post754590

2. Vad kan jag göra istället för att använda "target"?

Du får använda Javascript, se t.ex. http://xhtml.nu/noterat/yank_om_target_i_1_0_strict.html (finns trådar om det på wF också om man letar lite ;) )

3. Align attributet stöds inte heller. Finns det någon annan lösning? Den här koden fungerar men centrerar samtidigt allt innehåll i tabellen

Det är en bugg i MSIE som ställer till det.
Kör t.ex. med CSS:en

<style type="text/css">
<!--
p {text-align:center}
p td {text-align:left}
-->
</style>

Du får förresten inte ha en block-tagg (som table) inuti ett <p>, bara "text" och taggar som är "inline" i text ;)

4. Sen så får jag även fel om jag placerar en tabell inom en p tagg. Och fel om jag placerar en img tagg utanför en paragraf.... :l

Det stämmer det.
I HTML4 Strict (och därför också i xhtml1.0 Strict) måste man lägga bilder i ett block (t.ex. en <div> eller ett <p>). Det får f.ö. inte förekomma annnat än "Block" i body i "Strict" HTML4 och xhtml1.0

Detta får du lära dig att leva med.

Kör du med <div> istället för <p> så får du ha tabeller och andra block med i innehåller. <p>== "Ett block med text" i "Strict" ;)

5. Går attributen "cellspacing="0" cellpadding="0" border="0"" i tabel taggen att skriva som css?

Just den kombinationen kan du köra som

]<style type="text/css">
<!--
table {border-collapse:collapse; padding:0; border:none}
td {padding:0;border:none}
-->
</style>

Ska jag ge upp idén om att använda strict och gå över till transitional?

Nej det tycker jag inte, det tar bara ett tag att vänja sig ;)
Kan du "strict" kan du dessutom enkelt "falla tilbaka" till Transitional utan att du behöver glömma de nya trix du lärt dig på den resan ;)
Men det är ändå mest en smaksak (om inte dina uppdragsgivare kräver någondera "smakerna" förståss ;) )

/red: Pace och LeonL - Ni skrev lite snabbare än jag - såg ej era inlägg förrän efteråt... Menade inte att vara Messerschmitt... *sorry* :birp

Alpha IIMedlem sedan maj 20002 993 inlägg
#5

http://xhtml.nu/noterat/yank_om_target_i_1_0_strict.html

Fungerar tyvärr inte för mig.. Länkarna öppnas ändå i samma fönster :(

---

Sen så funkar inte css koden likadant som align gjorde. Tabellen är en liten inforuta som jag vill placera så att den ligger på samma höjd som texten. Med css koden börjar texten först efter tabellen. :l

edit/ javascriptet fungerar om det ligger i head men inte i en annan fil. Vad beroro det på?

jarvkloMedlem sedan juli 20013 378 inlägg
#6

Sen så funkar inte css koden likadant som align gjorde. Tabellen är en liten inforuta som jag vill placera så att den ligger på samma höjd som texten. Med css koden börjar texten först efter tabellen.
[...]
javascriptet fungerar om det ligger i head men inte i en annan fil. Vad beroro det på?

Hmm...
Bägge frågorna är svara på utan att se din kod...

Har du möjlighet att lägga ut sidan på nätet nånstans så att vi kan undersöka koden ordentligt innan vi börjar svara/gissa?

Alpha IIMedlem sedan maj 20002 993 inlägg
#7

https://www.progamerz.fw.nu (nee, jag kom inte på namnet ;) )

Alpha IIMedlem sedan maj 20002 993 inlägg
#8

Problemet är att document.getElementsByTagName("a") returnerar 0 när den ligger i en egen fil..

jarvkloMedlem sedan juli 20013 378 inlägg
#9

Hmm...
Jag missuppfattar dig antagligen om vad jag skall leta efter nu, men jag hittar ingen centrerad tabell där...
Och scriptet ligger i en extern fil, men jag kan inte klura ut vad det är som inte funkar rent praktiskt...
Mer info ?

Alpha IIMedlem sedan maj 20002 993 inlägg
#10

Hela sidan är en centrerad tabell ;)
Men den har jag lyckats centrera med css. Problemet är rutan på startsidan som innehåller info om uppdateringar.

Är 'document' inte samma object i en fil som man inkluderar som det är om man skriver samma kod på sidan?

LBCMedlem sedan jan. 2003146 inlägg
#11

Angående ditt problem med att länka till nya fönster: kan det vara sökvägen till js-filen som ställer till det?

Prova lägg en full sökväg till js-filen i head:

<script src="http://www.dom_domän.com/includes/common.js" type="text/javascript"></script>

Kolla att common.js ser ut som nedan:

function externalLinks() { 
 if (!document.getElementsByTagName) return; 
 var anchors = document.getElementsByTagName("a"); 
 for (var i=0; i<anchors.length; i++) { 
   var anchor = anchors[i]; 
   if (anchor.getAttribute("href") && 
       anchor.getAttribute("rel") == "external") 
     anchor.target = "_blank"; 
 } 
} 
window.onload = externalLinks;

Länka sedan med följande där du vill använda funktionen:

<a href="document.html" rel="external">external link</a>

Men egentligen, varför länka till nytt fönster? Själv väljer jag helst själv när ett nytt fönster ska öppnas ;)

dectgapMedlem sedan sep. 20021 655 inlägg
#12
window.onLoad = init_external_links();

Funktionens namn ska skrivas utan parenteserna på slutet, alltså:

window.onLoad = init_external_links;
jarvkloMedlem sedan juli 20013 378 inlägg
#13

Alpha II skrev:

Hela sidan är en centrerad tabell ;)
Men den har jag lyckats centrera med css.

Missade det - förmodligen för att det inte funkar i Moz/FireBird 0.6.1/Win som jag kör (därav antagligen min förvirring, jag letade längre in i tabellstrukturerna i hastigheten ;) ). Prova att köra med

<table width="600" border="0" cellpadding="0" cellspacing="0" [b]style="margin:auto"[/b]>

på din "huvudtabell" så löser *det* sig iaf ;)

Problemet är rutan på startsidan som innehåller info om uppdateringar.

Hmm...
Om jag förstår dig rätt så är problemet att texten "Välkommen" hamnar en bit nedanför texten "Nyheter" ?
Det verkar komma sig av att <p> lägger (oönskat) utrymme "över sig" per default i <p class="header1"> ...
Det löser du i din css-fil genom att modda:

.header1 {
	font-family: Arial, Verdana, Helvetica, sans-serif;
	font-size: 16px;
	font-weight: bold;
	color: #2C2C2C;
	font-style: normal;
[b]  margin-top:0; 
  padding-top:0;[/b]
}

:birp

------------
Edit:
Hmm....
Jag har visst sylt i skallen ikväll... x(
Nu kom jag på vad du antagligen *egentligen* har problem med...

Prova att köra med style="float:right" istället för align="right" på den tabellen som innehåller "Nyheter" !
(med reservation för att sådana float:ar har buggat sig i "äldre" webbläsare om jag kommer ihåg rätt)

If all else fails - use tables! - speciellt som du redan har några nivåer sådana runt de celler du har problem med ;)

Lycka till! :bire

Alpha IIMedlem sedan maj 20002 993 inlägg
#14

LBC, dectgap >>
Problemet ligger inte där. Om jag lägger in en alert i init_external_links() så får jag upp den när jag går in på sidan. Så problemet måste ju på något sätt vara att document objektet inte pekar till sidan där skriptet inkluderas.

jarvklo >>
Tack :bire

LBCMedlem sedan jan. 2003146 inlägg
#15

Alpha II skrev:

LBC, dectgap >>
Problemet ligger inte där. Om jag lägger in en alert i init_external_links() så får jag upp den när jag går in på sidan. Så problemet måste ju på något sätt vara att document objektet inte pekar till sidan där skriptet inkluderas.

Jag missuppfattar dig säkert, men om det bara handlar om att länka till nytt fönster i XHTML Strict 1.0 är här är ett upplagt exempel (kolla källkoden).

Alpha IIMedlem sedan maj 20002 993 inlägg
#16

Jag har också fått det att fungera - s länge koden ligger i html filen.... :l Jag vill helst ha den i en js fil. Men om jag har koden i en separat js fil så blir anchors.length alltid 0. dvs den kan inte hitta några objekt på sidan.

Alpha IIMedlem sedan maj 20002 993 inlägg
#17

Kopierade koden rakt av och nu fungerade det även i en separat fil. Konstigt... Tack :bire

Alpha IIMedlem sedan maj 20002 993 inlägg
#18

Jag har inte haft tid att testa sidan i NN/Mozilla tidigare. Men nu i samband att jag föröskte få scriptet att fungera så märkte jag att sidan buggade en hel del i mozilla. Bl a så hålls inte delarna i menyn ihop utan får breda kanter mellan sig och på förstasidan går den röda linjen rakt över nyhetsrutan. Kan man åtgärda det på något enkelt sätt eller får jag lov att pussla ihop sidan på något annat sätt?

257 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
122 ms — hämta statistik (db)
134 ms — hämta tråd, inlägg och bilagor (db)