Zum Inhalt springen

w3c html 4.0 transitional valide mit typo3 ?

Erstellt am 26. Januar 2005 · 8 Antworten · letzte Antwort am 23. Februar 2005

Tags: HTML & CSS, Frage

nice ·

hallo,
ich bekomme mehrere fehler bei der validierung aber diesen fehler kann ich nicht ausbügeln.

Zeile
5

Spalte: 75
Fehler: Zeicheninhalt ist hier nicht erlaubt

Fehlerstelle: <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
er beschwert sich über den
im template habe ich noch nichts zu den meta tags definiert. die / vor den > macht es auch noch bei ein paar extentions. aber vieleicht ergiebt sich dass ja dann von alleine.

wie krige ich dies zeile html 4.0 transitional valide?
habe eine abgewandelte version des w3c validators verwendet.
http://validator.de.selfhtml.org/
mfg nice

nice ·

hallo,
ich bins noch mal,
habe mich vertan er beschwert sich nicht über den der eigentlich ein / sein sollte (hatte mich vertippt).
der > ist unterstrichen komischer weise.
mfg nice

mic_jan ·

Hallo,

der > ist unterstrichen komischer weise.

Ich habe die Erfahrung gemacht, dass die Validatoren nicht immer die richtige Stelle markieren 😉

AFAIK beschwert er sich über den "/" weil das XHTML ist und nicht HTML. Also ich habe damals meine Seite valide bekommen, indem ich meine Seite nach XHTML 1.0 transitional gewandelt habe ;-) Die letzetn kleinen Fehler waren dann nur noch Flüchtigkeitsfehler 😉 Vielleicht hilft dir das...

Gruss

Michael

JayR ·

Hallo,

das Problem mit der HTML-Konformität lässt sich einfach lösen indem ihr die Programmstruktur der metatags extension anpasst.

Dazu muss die Datei meta.php angepasst werden. Eigentlich müssen nur alle "/>" durch ">" ersetzt werden.

Der daraus resultierende Code lautet:

<?php
/***************************************************************
*  Copyright notice
*  
*  (c) 1999-2004 Kasper Skaarhoj (kasperYYYY@typo3.com)
*  All rights reserved
*
*  This script is part of the TYPO3 project. The TYPO3 project is 
*  free software; you can redistribute it and/or modify
*  it under the terms of the GNU General Public License as published by
*  the Free Software Foundation; either version 2 of the License, or
*  (at your option) any later version.
* 
*  The GNU General Public License can be found at
*  http://www.gnu.org/copyleft/gpl.html.
*  A copy is found in the textfile GPL.txt and important notices to the license 
*  from the author is found in LICENSE.txt distributed with these scripts.
*
* 
*  This script is distributed in the hope that it will be useful,
*  but WITHOUT ANY WARRANTY; without even the implied warranty of
*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
*  GNU General Public License for more details.
*
*  This copyright notice MUST APPEAR in all copies of the script!
***************************************************************/
/**
 * Creates meta tags. 
 * See static_template 'plugin.meta'
 *
 * Revised for TYPO3 3.6 June/2003 by Kasper Skårhøj
 * XHTML compliant
 *
 * @author	Kasper Skårhøj <kasperYYYY@typo3.com>
 */


if (!is_object($this))	die('Not called from cObj!');

$globalMeta = $conf['global.'];
$local = $conf['local.'];
$regular = array();
$DC = array();

$localDescription = trim($this->stdWrap($local['description'],$local['description.']));
$localKeywords = trim($this->stdWrap($local['keywords'],$local['keywords.']));

// Unsetting secondary description and keywords if constant is not substituted!
if (substr($globalMeta['description_2'],0,2)=='{$')		{$globalMeta['description_2'] = '';}
if (substr($globalMeta['keywords_2'],0,2)=='{$')		{$globalMeta['keywords_2'] = '';}
if (!$conf['flags.']['useSecondaryDescKey'])	{
	unset($globalMeta['keywords_2']);
	unset($globalMeta['description_2']);
}

// Process them:
if ($globalMeta['description'] || $globalMeta['description_2'] || $localDescription)	{
	$val = trim($globalMeta['description']);
	if ($globalMeta['description_2'])	{
		$val = ($val?ereg_replace('.$','',$val).'. ':'').$globalMeta['description_2'];
	}
	if ($localDescription)	{
		if ($conf['flags.']['alwaysGlobalDescription'] )	{
			$val = ereg_replace('.$','',$localDescription).'. '.$val;
		} else {
			$val = $localDescription;
		}
	}
	$val=trim($val);
	$regular[] = '<meta name="description" content="'.htmlspecialchars($val).'">';
	$DC[] = '<meta name="DC.Description" content="'.htmlspecialchars($val).'">';
}
if ($globalMeta['keywords'] || $globalMeta['keywords_2'] || $localKeywords)	{
	$val = trim($globalMeta['keywords']);
	if ($globalMeta['keywords_2'])	{
		$val = ereg_replace(',$','',$val).','.$globalMeta['keywords_2'];
	}
	if ($localKeywords)	{
		if ($conf['flags.']['alwaysGlobalKeywords'] )	{
			$val = ereg_replace(',$','',$localKeywords).','.$val;
		} else {
			$val = $localKeywords;
		}
	}
	$val=trim(ereg_replace(',$','',trim($val)));
	$val=implode(',',t3lib_div::trimExplode(',',$val,1));
	$regular[] = '<meta name="keywords" content="'.htmlspecialchars($val).'">';
	$DC[] = '<meta name="DC.Subject" content="'.htmlspecialchars($val).'">';
}
if ($globalMeta['robots'])	{
	$regular[] = '<meta name="robots" content="'.htmlspecialchars($globalMeta['robots']).'">';
}
if ($globalMeta['copyright'])	{
	$regular[] = '<meta name="copyright" content="'.htmlspecialchars($globalMeta['copyright']).'">';
	$DC[] = '<meta name="DC.Rights" content="'.htmlspecialchars($globalMeta['copyright']).'">';
}
if ($globalMeta['language'])	{
	$regular[] = '<meta http-equiv="content-language" content="'.htmlspecialchars($globalMeta['language']).'">';
	$DC[] = '<meta name="DC.Language" scheme="NISOZ39.50" content="'.htmlspecialchars($globalMeta['language']).'">';
}
if ($globalMeta['email'])	{
	$regular[] = '<link rev="made" href="mailto:'.htmlspecialchars($globalMeta['email']).'">';
	$regular[] = '<meta http-equiv="reply-to" content="'.htmlspecialchars($globalMeta['email']).'">';
}
if ($globalMeta['author'])	{
	$regular[] = '<meta name="author" content="'.htmlspecialchars($globalMeta['author']).'">';
	$DC[] = '<meta name="DC.Creator" content="'.htmlspecialchars($globalMeta['author']).'">';
}
if ($globalMeta['distribution'])	{
	$regular[] = '<meta name="distribution" content="'.htmlspecialchars($globalMeta['distribution']).'">';
}
if ($globalMeta['rating'])	{
	$regular[] = '<meta name="rating" content="'.htmlspecialchars($globalMeta['rating']).'">';
}
if ($globalMeta['revisit'])	{
	$regular[] = '<meta name="revisit-after" content="'.htmlspecialchars($globalMeta['revisit']).'">';
}

$DC[] = '<link rel="schema.dc" href="http://purl.org/metadata/dublin_core_elements">';


if (!$conf['flags.']['DC'])	{$DC=array();}

$content ='';
$content.= implode($regular,chr(10)).chr(10);
$content.= implode($DC,chr(10)).chr(10);

?>

Gruß Jan

nice ·

danke!
mir ist html 4.0 transitional lieber als xhtml 1.0 transitional.
da ich die seite auf eben dieses ausgelegt habe und eine umarbeitung doch längere zeit in anspruch nehmen würde.
von meinem html ist bis auf eine ausnahme die ich bewusst so gemacht habe alles valiede nur die typo sachen stimmen nicht.
ein paar sachen sinds noch aber ich probiere erst mal das mit den meta tags.
mfg
nice
ps: weiß einer eine lösung die das nicht valiede onresize im body tag ersetzt?

Aviator ·

Ohne Deine Seite zu kennen - Link? -, ist es schwierig.
Die / bei den Metatags zu generator und content-type sind in Typo3 selber verkehrt. Ich hab das in

typo3_src/typo3/sysext/cms/tslib/class.tslib_pagegen.php

direkt geaendert. 😃

Ist nicht ganz sauber, aber leider macht es mindestens die Version 3.6.2 nicht korrekt trotz nicht aktiviertem xhtml.

nice ·

hallo,
danke an alle erstmal!
@ aviator
wenn du dich mit

Aviator schrieb

Ohne Deine Seite zu kennen - Link? -, ist es schwierig.

auf

nice schrieb

ps: weiß einer eine lösung die das nicht valiede onresize im body tag ersetzt?

beziehst hat sich die sache schon erledigt.
ich habe leider vergessen hier zu posten dass ich für onresize keine antwort mehr brauche, da ich das design umschmeiße.

ansehen kannst du dir die seite denoch gerne im alten design (belibt so lange das alte design bis das neue auf nem lokaln server funktioniert)

http://traunstein.begu.org

mfg
nice

ps: da ich nun erst das design umschmeiße kann ich mich leider danach erst weider mit dem validieren von typo3 sachen beschäftigen.
ich werde dann versuchen eine setup variable einzubauen. wenn diese auf html gesetzt wird werden html valide tags erzeugt auf xhtml gesetzt xhtml valiede.
allerdigs weiß ich nicht ob ich wirklich dafür zeit finde oder einfach wirklich nur alle tags umtausche.

philipps ·

so, um nochmal kurz zum Thema w3c und Meta zurückzukommen:

Also ich habe jetzt mal meine meta.php durch den obegenannten Code von JayR ersetzt, aber irgendwie verändert sich da gar nichts.
Ehrlichgesagt hab ich auch noch gar nicht die Unterschiede zum Original gefunden ...

Danke und Grüße
philipp

Aviator ·

Siehe meinen Artikel in diesem Thread zu der Datei, die Du aendern musst. Dort einfach die / vor den > an den entsprechenden Stellen entfernen.