Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 12. September 2012 14:37

kampkrusty
Server-Pate
Registriert: 03. April 2011
Beiträge: 263

Fehlerbereinigung

Hallo,

ich bin mit meiner Seite soweit erst mal zufrieden und wollte mich nun einmal an die Optimierung machen. Alles neu für mich. wink

Möchte nun beginnen die Code Fehler auf der Seite zu beheben. Dazu habe ich die Seite per MVS prüfen lassen.
Hier das Ergebnis: http://validator.w3.org/check?uri=http% … 1.3#result

Dabei ist mir aufgefallen das viele aus Modulen resultieren welche ich nicht angerührt habe. Die ersten Einträge zum Beispiel betreffen das Search und News Modul. Bin mir jetzt nicht ganz im Klaren wie ich diese Fehler beheben kann?
Soll/Kann ich hier manuell eingreifen?


ff-jena-mitte.de

Offline

#2 12. September 2012 16:36

antibart
Server-Pate
Registriert: 14. Dezember 2010
Beiträge: 880

Re: Fehlerbereinigung

Einen kleinen Gefallen könntest du dir tun, wenn du den DocType nicht als "Strict", soondern als "transitional" definierst. Das ist etwas toleranter und deine Seite ist trotzdem noch valide.

Ansonsten steht da ja, was falsch ist:

Line 50, Column 32: document type does not allow element "label" here; missing one of "p", "h1", "h2", "h3", "h4", "h5", "h6", "div", "pre", "address", "fieldset", "ins", "del" start-tag

Die ist ein Tag nicht richtig geschlossen. 


Line 70, Column 8: document type does not allow element "td" here; assuming missing "tr" start-tag

Das bezieht sich hierauf:

<table cellpadding="0" cellspacing="0">
    <td>

Da fehlt die Table-Row (<tr></tr>) . Dasselbe gilt für die folgenden Tabellenfehler.


there is no attribute "target"

Das Attribut target="_blank" wird von deinem DocType nicht unterstützt. Lösung: siehe meinen ersten Kommentar.

Line 328, Column 5: end tag for "br" omitted, but OMITTAG NO was specified

<br> ist falsch. Tags, die keinen abbschließenden tag brauchen, sehen so aus: <br />

document type does not allow element "div" here; missing one of "object", "ins", "del", "map", "button" start-tag

Ein Div gehört nicht in einen Absatz. Entferne die <p>-Tags.

Alle anderen Fehler sind wiederholungen derselben Fehler.

Beitrag geändert von antibart (12. September 2012 16:46)

Offline

#3 12. September 2012 16:45

faglork
arbeitet mit CMS/ms
Ort: Fränkische Schweiz
Registriert: 15. Dezember 2010
Beiträge: 1.152
Webseite

Re: Fehlerbereinigung

antibart schrieb:

Nimm also die "label"-Tags aus dem Search-Template raus. Du brauchst sie im Prinzip auch nicht wirklich.

Seufz.

Anscheinend beschäftigt sich nur wenige in diesem Forum auch nur ansatzweise mit Zugänglichkeit/Usability/Barrierefreiheit.

Siehe u.a.
http://www.mediaevent.de/xhtml/label.html
http://www.einfach-fuer-alle.de/artikel … /html-css/


Die von XHTML Strict angemeckerten Fehler lassen sich -glaubich- durch ein simples FIELDSET beheben.
Oder eben auf XHTML transitional umsteigen ...


Servus,
Alex

Beitrag geändert von faglork (12. September 2012 16:49)

Offline

#4 12. September 2012 16:48

antibart
Server-Pate
Registriert: 14. Dezember 2010
Beiträge: 880

Re: Fehlerbereinigung

faglork schrieb:
antibart schrieb:

Nimm also die "label"-Tags aus dem Search-Template raus. Du brauchst sie im Prinzip auch nicht wirklich.

Seufz.

Anscheinend beschäftigt sich nur wenige in diesem Forum auch nur ansatzweise mit Zugänglichkeit/Usability/Barrierefreiheit.

Sorry - genau bei diesem Fehler bin mir nicht ganz sicher, daher habe ich oben noch mal editiert. Das kann auch sein, dass "irgendwo" ein Tag nicht richtig geschlossen wurde. Eventuell verschwindet der Fehler, wenn du einige der anderen bereinigt hast.

Ansonsten - ja doch - beschäftige ich mich "relativ" viel mit den Themen Barrierefreiheit und Usabilitry und bislang gab es keine Klagen.

In "strict" habe ich zugegeben aber erst ein Projekt umgesetzt. Mit 0 Fehler und 0 Warnungen.

Beitrag geändert von antibart (12. September 2012 16:53)

Offline

#5 13. September 2012 09:31

kampkrusty
Server-Pate
Registriert: 03. April 2011
Beiträge: 263

Re: Fehlerbereinigung

edit.

Beitrag geändert von kampkrusty (13. September 2012 09:51)


ff-jena-mitte.de

Offline

#6 13. September 2012 09:34

faglork
arbeitet mit CMS/ms
Ort: Fränkische Schweiz
Registriert: 15. Dezember 2010
Beiträge: 1.152
Webseite

Re: Fehlerbereinigung

kampkrusty schrieb:

resultiert doch aus der automatischen Generierung aus dem Newsmodul. Wo kann ich denn dort Einfluss nehmen?

Im Template ...

Servus,
Alex

Offline

#7 13. September 2012 09:52

kampkrusty
Server-Pate
Registriert: 03. April 2011
Beiträge: 263

Re: Fehlerbereinigung

Hab es schon korrigiert. Hatte es selbst angepasst und damit den Fehler verursacht...

roll

Beitrag geändert von kampkrusty (13. September 2012 09:52)


ff-jena-mitte.de

Offline

#8 13. September 2012 11:45

kampkrusty
Server-Pate
Registriert: 03. April 2011
Beiträge: 263

Re: Fehlerbereinigung

Habe nun bis auf 3 Fehler alles korrigiert.
Die letzten 3 bereiten mir aber einiges an Kopfzerbrechen.
Zum einen gibt es das offenbar nicht Strict konforme target="_blank".
Dazu gibt es verschiedene Lösungsansätze. Welchen sollte man da nehmen?

Die nächsten beiden Probleme kann ich nicht lokalisieren.

Zum einen

MVS schrieb:

Line 50, Column 32: document type does not allow element "label" here; missing one of "p", "h1", "h2", "h3", "h4", "h5", "h6", "div", "pre", "address", "fieldset", "ins", "del" start-tag  <label for="cntnt01searchinput">Suche:&nbsp;</label><input type="text" class="s…  ✉  The mentioned element is not allowed to appear in the context in which you've placed it; the other mentioned elements are the only ones that are both allowed there and can contain the element mentioned. This might mean that you need a containing element, or possibly that you've forgotten to close a previous element.  One possible cause for this message is that you have attempted to put a block-level element (such as "<p>" or "<table>") inside an inline element (such as "<a>", "<span>", or "<font>")

Der betreffende Code sieht wie folgt aus:

<div id="top-bar" class="container"> 
    <div class="bar"> 
        <div class="text">du bist hier: <span class="lastitem">Home</span>
        </div> 
        <div id="search"> 
            <form id="cntnt01moduleform_1" method="post" action="moduleinterface.php" class="cms_form"> 
                <div class="hidden"> 
                  <input type="hidden" name="mact" value="Search,cntnt01,dosearch,0" /> 
                  <input type="hidden" name="cntnt01returnid" value="19" /> 
                </div> 
          ---><label for="cntnt01searchinput">Suche:&nbsp;</label><---
                <input type="text" class="search-input" id="cntnt01searchinput" name="cntnt01searchinput" size="20" maxlength="50" value="Suche..." onfocus="if(this.value==this.defaultValue) this.value='';" onblur="if(this.value=='') this.value=this.defaultValue;" /> 
                <input class="search-button" name="submit" value="Suchen" type="submit" /> 
                <input type="hidden" id="cntnt01origreturnid" name="cntnt01origreturnid" value="15" /> 
            </form> 
        </div> 
    </div> 
</div>

Und dann noch:

MVS schrieb:

Line 343, Column 250: document type does not allow element "input" here; missing one of "p", "h1", "h2", "h3", "h4", "h5", "h6", "div", "pre", "address", "fieldset", "ins", "del" start-tag  …e) this.value='';" onblur="if(this.value=='') this.value=this.defaultValue;" />  ✉  The mentioned element is not allowed to appear in the context in which you've placed it; the other mentioned elements are the only ones that are both allowed there and can contain the element mentioned. This might mean that you need a containing element, or possibly that you've forgotten to close a previous element.  One possible cause for this message is that you have attempted to put a block-level element (such as "<p>" or "<table>") inside an inline element (such as "<a>", "<span>", or "<font>").

Auch hierzu gibt es den Code:

<li> 
  <h2>Anmeldung</h2> 
    <div id="loginform"> 
        <form id="mfd621moduleform_2" method="post" action="http://www.kampkrusty.de/" class="cms_form"> 
            <div class="hidden"> 
              <input type="hidden" name="mact" value="FrontEndUsers,mfd621,do_login,1" /> 
              <input type="hidden" name="mfd621returnid" value="15" /> 
              <input type="hidden" name="page" value="15" /> 
              <input type="hidden" name="mfd621form" value="login" /> 
              <input type="hidden" name="mfd621returnto" value="home" /> 
            </div> 
         ---><input type="text" name="mfd621feu_input_username" id="feu_input_username" size="20" maxlength="40" value="Benutzername" onfocus="if(this.value==this.defaultValue) this.value='';" onblur="if(this.value=='') this.value=this.defaultValue;" /><--- 
            <div id="feusecond"><br /> 
              <input type="password" id="feu_input_password" name="mfd621feu_input_password" size="20" maxlength="20" value="Passwort" onfocus="if(this.value==this.defaultValue) this.value='';" onblur="if(this.value=='') this.value=this.defaultValue;" /><br /><br /> 
              <input type="submit" name="mfd621submit" class="button" value="Anmelden" /><br /><br /> 
              <a class="feulostpw" href="http://www.kampkrusty.de/index.php?mact=FrontEndUsers,cntnt01,default,0&amp;cntnt01form=forgotpw&amp;cntnt01returnto=15&amp;cntnt01returnid=15" title="Klicken Sie hier, wenn Sie sich nicht mehr an Ihr Passwort erinnern k&ouml;nnen">Haben Sie Ihr Passwort vergessen?</a><br /> 
            </div> 
        </form> 
    </div><br /> 
</li>

Noch eins: Muss man die Unterseiten alle Extra validieren lassen?

Beitrag geändert von kampkrusty (13. September 2012 11:46)


ff-jena-mitte.de

Offline

#9 13. September 2012 12:59

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: Fehlerbereinigung

Das Target Blank würde ich mit jQuery umsetzen:

<script type="text/javascript">
$(window).load(function(){
     $('a.external').attr('target', '_blank');
});
</script>

Beim Such und FEU-Template will er noch ein <p> oder ein <div> um die Inputfelder. Hier reicht auch ein einfaches <div><input ...... ></div>

Diese Ergänzungen kannst du einfach in den jeweiligen Templates vornehmen.

Die Unterseiten musst du nur prüfen, wenn du dort weitere Module einsetzt. Ansonsten sollte es jeweils stimmen. Allerdings kann eine Kontrolle sicher nicht schaden. Man sieht ab und zu noch Fehler die vorher nicht zu Tage getreten sind.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#10 13. September 2012 13:21

kampkrusty
Server-Pate
Registriert: 03. April 2011
Beiträge: 263

Re: Fehlerbereinigung

Das mit dem div hat funktioniert (gibt es dazu eine Erklärung?)

An welcher Stelle muss der script code denn eingebunden werden?

Danke dir.


ff-jena-mitte.de

Offline

#11 13. September 2012 13:32

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: Fehlerbereinigung

Für die Erklärung musst du die Dokumentation des Strict Standards lesen.

Der Script-Code musst du im <head></head> Bereich der Seite einbauen. Beachte einfach folgendes: jQuery muss vorher eingebunden sein, sonst funktioniert das Script nicht.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#12 13. September 2012 13:56

mörml
Server-Pate
Registriert: 23. Januar 2011
Beiträge: 443

Re: Fehlerbereinigung

@kampkrusty: Die Erklärung für <div> hast du schon selbst geliefert ;o)

The mentioned element is not allowed to appear in the context in which you've placed it; the other mentioned elements are the only ones that are both allowed there and can contain the element mentioned. This might mean that you need a containing element

Der "Haken" ist die Verschachtelung von Elementen.

VG!


kann CMSms buchstabieren...

CMSms 1.11.12
PHP 5.5.14

Offline

#13 13. September 2012 13:58

mörml
Server-Pate
Registriert: 23. Januar 2011
Beiträge: 443

Re: Fehlerbereinigung

@nockenfell: Das Script kann man auch direkt in den Meta-Angaben im Admin-Bereich einsetzen, oder?


kann CMSms buchstabieren...

CMSms 1.11.12
PHP 5.5.14

Offline

#14 13. September 2012 15:10

kampkrusty
Server-Pate
Registriert: 03. April 2011
Beiträge: 263

Re: Fehlerbereinigung

Mit jQuery habe ich noch schwer zu kämpfen. Ich habe jQuery installiert und ein neues Skript angelegt. Dort habe ich exakt das rein geschrieben was nockenfell oben gepostet hat.
Dann noch im Seitentemplate den Aufruf im Head Bereich eingefügt ({jQuery action="load" script="1"}).
Das ganze hat aber keinen Effekt.
Der Link sieht so aus

<a title="FCC" href="http://aktion.fc-carlzeiss-jena.de" target="_blank">aktion.fc-carlzeiss-jena.de</a>

ff-jena-mitte.de

Offline

#15 13. September 2012 16:17

mörml
Server-Pate
Registriert: 23. Januar 2011
Beiträge: 443

Re: Fehlerbereinigung

Müsste da nicht auch noch jquery selbst aufgerufen werden? Also bspw. <script type="text/javascript" src="jquery.js"></script> ?


kann CMSms buchstabieren...

CMSms 1.11.12
PHP 5.5.14

Offline

#16 13. September 2012 19:26

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: Fehlerbereinigung

jQuery installierst du am einfachsten (ich halte nicht viel vom jQueryTools Modul) in dem du entweder jQuery von www.jquery.com herunterlädst und einbindest oder in dem du jQuery direkt so einbindest:

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>

[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#17 14. September 2012 09:18

kampkrusty
Server-Pate
Registriert: 03. April 2011
Beiträge: 263

Re: Fehlerbereinigung

Ok, habe das Modul wieder deinstalliert und entfernt.

Im Head des Seitentemplates folgende Zeilen eingefügt:

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script> 
<script type="text/javascript">$(window).load(function(){$('a.external').attr('target', '_blank');});</script>

Der Link sieht weiter so aus:

<a title="FCC" href="http://aktion.fc-carlzeiss-jena.de" target="_blank">aktion.fc-carlzeiss-jena.de</a>

Der Validator sagt aber weiterhin das er es nicht mag. Die Funktion an sich funktioniert (Öffnen in neuem Tab).

/edit
Im Source Code des Validators zeigt er im Head nur folgendes an:

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<script type="text/javascript">$(window).load(function());</script> 

Liegt es vielleicht daran?

Beitrag geändert von kampkrusty (14. September 2012 09:22)


ff-jena-mitte.de

Offline

#18 14. September 2012 10:13

faglork
arbeitet mit CMS/ms
Ort: Fränkische Schweiz
Registriert: 15. Dezember 2010
Beiträge: 1.152
Webseite

Re: Fehlerbereinigung

Leicht offtopic:

Kleine Zwischenfrage: Wozu überhaupt?

Es ist keine gute Idee, Seiten in einem neuen Fenster aufzumachen. Das kann der Benutzer ja auch selbst machen - WENN ER ES WILL. Die Art und Weise wie sich der Browser verhält sollte dem Nutzer überlassen bleiben. Bei mobilen Endgeräten ist es besonders kontraproduktiv, weil die Fensterverwaltung nicht so offensichtlich ist wie bei einem "normalen" Browser.

Siehe dazu
http://www.usability-tipps.de/info/inde … er-offnen/

Dann kannst du dir das ganze Gesummse sparen - es erleichter sowohl deine Arbeit als auch den Benutzern den Umgang mit deiner Website ...

Meinjanur ...

Servus,
Alex

Offline

#19 14. September 2012 10:17

kampkrusty
Server-Pate
Registriert: 03. April 2011
Beiträge: 263

Re: Fehlerbereinigung

Habe das jetzt schon ein paar mal gelesen. Wollte damit verhindern das der User die Seite (aus Versehen, weil er es nicht besser wusste) verlässt.
Ich kenne meine Kumpels...


ff-jena-mitte.de

Offline

#20 14. September 2012 10:29

mörml
Server-Pate
Registriert: 23. Januar 2011
Beiträge: 443

Re: Fehlerbereinigung

Mich nervt es total, wenn Links sich im selben Browserfenster öffnen und ich x-mal zurückklicken muss - das ist schlichtweg unkomfortabel. Gerade dann, wenn ich auf der eigentlichen Seite später weiterlesen will, auf der sich neu öffnenden jedoch wiederum weiterführende Links bestehen.

Zum Thema: @kampkrusty, füg mal in die globalen Metadaten im Adminbereich die Zeile ein:

<meta http-equiv="Content-Script-Type" content="text/javascript" />

Im Übrigen hast du immer noch die Fehler mit den verschachtelten Elementen.

VG!


kann CMSms buchstabieren...

CMSms 1.11.12
PHP 5.5.14

Offline

#21 14. September 2012 10:59

kampkrusty
Server-Pate
Registriert: 03. April 2011
Beiträge: 263

Re: Fehlerbereinigung

mörml schrieb:

Zum Thema: @kampkrusty, füg mal in die globalen Metadaten im Adminbereich die Zeile ein:

<meta http-equiv="Content-Script-Type" content="text/javascript" />

Hab ich gemacht, da steht jetzt:

<meta name="Generator" content="CMS Made Simple - Copyright (C) 2004-10 Ted Kulp. All rights reserved." /> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<meta http-equiv="Content-Script-Type" content="text/javascript" />

Hat aber keinen signifikanten Effekt. Ich scheine da grundsätzlich irgendwas falsch zu machen.

mörml schrieb:

Im Übrigen hast du immer noch die Fehler mit den verschachtelten Elementen.

VG!

Immer eins nach dem anderen. Man will ja auch was lernen. wink
Zumal ich im Search Template den Hinweis mit den div's nicht anwenden kann, da es mir damit die Elemente verschiebt.

mörml schrieb:

Mich nervt es total, wenn Links sich im selben Browserfenster öffnen und ich x-mal zurückklicken muss - das ist schlichtweg unkomfortabel. Gerade dann, wenn ich auf der eigentlichen Seite später weiterlesen will, auf der sich neu öffnenden jedoch wiederum weiterführende Links bestehen.

Geht mir ganz genau so. smile

Beitrag geändert von kampkrusty (14. September 2012 11:13)


ff-jena-mitte.de

Offline

#22 14. September 2012 11:17

mörml
Server-Pate
Registriert: 23. Januar 2011
Beiträge: 443

Re: Fehlerbereinigung

Uuups, wollte nicht drängeln, jedoch hattest du oben geschrieben, dass das mit den divs geklappt hätte.

Also, ich sehe einen Effekt, der Fehler, auf den ich mich bezog, taucht im Validome nämlich nicht mehr auf ;o)

Hinsichtlich des Fehlers "target" als solches würde ich einmal die Lösung mittels CDATA versuchen, die du in dem Link findest, den du gepostet hattest:

<script type="text/javascript">
//<![CDATA[
$('a.external').bind('click', function() {
	window.open(this.href);
	return false;
});
//]]>
</script>
 
<a href="http: ....

kann CMSms buchstabieren...

CMSms 1.11.12
PHP 5.5.14

Offline

#23 14. September 2012 11:27

faglork
arbeitet mit CMS/ms
Ort: Fränkische Schweiz
Registriert: 15. Dezember 2010
Beiträge: 1.152
Webseite

Re: Fehlerbereinigung

mörml schrieb:

Mich nervt es total, wenn Links sich im selben Browserfenster öffnen und ich x-mal zurückklicken muss - das ist schlichtweg unkomfortabel.

Niemand muss "x-mal" zurückklicken. Wenn Du zb. im Firefox den Zurück-Button gedrückt hältst, öffnet er eine Liste alle besuchten Seiten - du brauchst nur auszuwählen. Alternativ kannst Du auf "Chronik" klicken. Das ist wesentlich komfortabler als -zig Tabs/Fenster. Aber das ist nur *meine* Meinung.

mörml schrieb:

Gerade dann, wenn ich auf der eigentlichen Seite später weiterlesen will, auf der sich neu öffnenden jedoch wiederum weiterführende Links bestehen.

NIEMAND hindert Dich, die Links in einem neuen Tab zu öffnen: STRG-Klick, das wars. Neues Fenster: SHIFT-Klick.

Mich nervt es total, wenn sich neue Fenster/Tabs öffnen obwohl ICH das nicht will. Den  umgekehrten Weg gibt es nämlich nicht: Wenn target=_blank, dann kann man das nicht blocken.

Meinst Du nicht auch dass es besser wäre das dem USER zu überlassen? Ihm *Deine* Meinung aufzwingen ist nicht grade benutzerfreundlich.

Und: Das gilt ganz besonders - wie gesagt - für mobile Endgeräte mit kleinen Bildschirmen.

Servus,
Alex

Beitrag geändert von faglork (14. September 2012 11:28)

Offline

#24 14. September 2012 11:27

mörml
Server-Pate
Registriert: 23. Januar 2011
Beiträge: 443

Re: Fehlerbereinigung

Ergänzung:  Dein Link muss dann natürlich entsprechend des Beispiels angepasst werden.


kann CMSms buchstabieren...

CMSms 1.11.12
PHP 5.5.14

Offline

#25 14. September 2012 11:28

mörml
Server-Pate
Registriert: 23. Januar 2011
Beiträge: 443

Re: Fehlerbereinigung

@faglork: Und was machst du gerade? ;o)

Im Übrigen wünscht sich kampkrusty nun mal die externe Lösung. Warum sollte man also über irgendwelche Paradigmen diskutieren?

Beitrag geändert von mörml (14. September 2012 11:29)


kann CMSms buchstabieren...

CMSms 1.11.12
PHP 5.5.14

Offline