Index: t3lib/class.t3lib_parsehtml.php =================================================================== --- t3lib/class.t3lib_parsehtml.php (révision 9702) +++ t3lib/class.t3lib_parsehtml.php (copie de travail) @@ -762,10 +762,13 @@ $tagContent = substr($tok,$endTag,$tagEnd-$endTag); $tagParts = preg_split('/\s+/s',$tagContent,2); $tagName = strtolower($tagParts[0]); - if (isset($tags[$tagName])) { - if (is_array($tags[$tagName])) { // If there is processing to do for the tag: - - if (!$endTag) { // If NOT an endtag, do attribute processing (added dec. 2003) + $emptyTag = 0; + if (isset($tags[$tagName])) { + if (is_array($tags[$tagName])) { // If there is processing to do for the tag: + if (preg_match('/^(area|base|br|col|hr|img|input|meta|param)$/i', $tagName)) { + $emptyTag = 1; + } + if (!$endTag) { // If NOT an endtag, do attribute processing (added dec. 2003) // Override attributes if (strcmp($tags[$tagName]['overrideAttribs'],'')) { $tagParts[1]=$tags[$tagName]['overrideAttribs']; @@ -918,7 +921,7 @@ if ($setTag) { // Setting the tag - $newContent[$c++]=$this->processTag($lt.($endTag?'/':'').trim($tagParts[0].' '.$tagParts[1]).$gt,$addConfig,$endTag,$lt=='<'); + $newContent[$c++] = $this->processTag($lt . ($endTag ? '/' : '') . trim($tagParts[0] . ' ' . $tagParts[1]) . ($emptyTag ? ' /' : '' ) . $gt, $addConfig, $endTag, $lt == '<'); } } } else {