Fixed bug #15110: Validation problems with sprites (empty <span>) (Thanks to Georg...
authorErnesto Baschny <ernst@cron-it.de>
Fri, 3 Sep 2010 18:13:59 +0000 (18:13 +0000)
committerErnesto Baschny <ernst@cron-it.de>
Fri, 3 Sep 2010 18:13:59 +0000 (18:13 +0000)
git-svn-id: https://svn.typo3.org/TYPO3v4/Core/trunk@8749 709f56b5-9817-0410-a4d7-c38de5d9e867

ChangeLog
t3lib/class.t3lib_iconworks.php
typo3/stylesheets/visual/main_content.css

index f3f7b00..82b91ad 100755 (executable)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2010-09-02  Ernesto Baschny  <ernst@cron-it.de>
+
+       * Fixed bug #15110: Validation problems with sprites (empty <span>) (Thanks to Georg Ringer, Steffen Ritter and Stefan Galinski)
+
 2010-09-01  Steffen Kamper  <steffen@typo3.org>
 
        * Fixed bug #15615: Fix and improve page renderer unit tests (Thanks to Helmut Hummel)
index ca781aa..f937605 100644 (file)
@@ -635,8 +635,8 @@ final class t3lib_iconWorks {
         * @access public
         */
        public static function getSpriteIcon($iconName, array $options = array(), array $overlays = array()) {
-               $innerHtml = (isset($options['html'])    ? $options['html']    : '');
-               $tagName   = (isset($options['tagName']) ? $options['tagName'] : 'span');
+               $innerHtml = (isset($options['html'])    ? $options['html']    : NULL);
+               $tagName   = (isset($options['tagName']) ? $options['tagName'] : NULL);
 
                        // deal with the overlays
                if (count($overlays)) {
@@ -672,8 +672,8 @@ final class t3lib_iconWorks {
         * @access public
         */
        public static function getSpriteIconForFile($fileExtension, array $options = array()) {
-               $innerHtml = (isset($options['html'])    ? $options['html']    : '');
-               $tagName   = (isset($options['tagName']) ? $options['tagName'] : 'span');
+               $innerHtml = (isset($options['html'])    ? $options['html']    : NULL);
+               $tagName   = (isset($options['tagName']) ? $options['tagName'] : NULL);
 
                        // create the CSS class
                $options['class'] = self::mapFileExtensionToSpriteIconClass($fileExtension) . (isset($options['class']) ? ' ' . $options['class'] : '');
@@ -733,8 +733,8 @@ final class t3lib_iconWorks {
         * @access public
         */
        public static function getSpriteIconForRecord($table, array $row, array $options = array()) {
-               $innerHtml = (isset($options['html'])    ? $options['html']    : '');
-               $tagName   = (isset($options['tagName']) ? $options['tagName'] : 'span');
+               $innerHtml = (isset($options['html'])    ? $options['html']    : NULL);
+               $tagName   = (isset($options['tagName']) ? $options['tagName'] : NULL);
 
                        // overlay this record icon with the status of the row
                $overlaySpriteIconName = self::mapRecordOverlayToSpriteIconName($table, $row);
@@ -959,7 +959,9 @@ final class t3lib_iconWorks {
         * @param       string  $innerHtml (optional)   the content within the tag, a "&nbsp;" by default
         * @param       string  $tagName (optional)     the name of the HTML element that should be used (span by default)
         */
-       protected static function buildSpriteHtmlIconTag(array $tagAttributes, $innerHtml = '&nbsp;', $tagName = 'span') {
+       protected static function buildSpriteHtmlIconTag(array $tagAttributes, $innerHtml = NULL, $tagName = NULL) {
+               $innerHtml = ($innerHtml === NULL ? '&nbsp;' : $innerHtml);
+               $tagName = ($tagName === NULL ? 'span' : $tagName);
                $attributes = '';
                foreach ($tagAttributes as $attribute => $value) {
                        $attributes .= ' ' . htmlspecialchars($attribute) . '="' . htmlspecialchars($value) . '"';
index 047a626..acaa86a 100644 (file)
@@ -15,10 +15,14 @@ span.t3-icon {
        height: 16px;
        overflow: hidden;
 }
+
 .t3-icon {
        background-image:url('../../gfx/icon_fatalerror.gif');
        background-repeat:no-repeat;
+       font-size:1px;
+       line-height:0;
 }
+
 .t3-icon .c-inputButton {
        width:16px;
        height:16px;