TYPO3-Testaccount
Testen Sie die aktuelle TYPO3 Version 4.4.2 kostenlos und unverbindlich für einen Monat!

jetzt testen

Schulungen

jetzt buchen

Accessible menü mit Bild und unsichtbarem Text


Autor Nachricht
Verfasst am: 29. 01. 2009 [18:32]
SimonSchaufi
Themenersteller
Dabei seit: 05.03.2008
Beiträge: 7
Hallo!
Ich habe schon das Forum durchsucht aber bisher keinen Eintrag gefunden, der mir hilft, mein Problem zu lösen.

Ich möchte gerne einen Menü erstellen, das so aussieht:

<ul>
<li><a href="[link]"><span class="hidden">[hier der Menütext]</span><img src="spacer.gif" /></a></li>
</ul>

Der Benutzer soll dann auf das Bild klicken können, den Text aber nur sehen, wenn er CSS ausschaltet.

Kann mir jemand mit dem TYPOScript helfen? -> wie wrappe ich das?

ProfilWWW
Verfasst am: 30. 01. 2009 [08:11]
jenses
Dabei seit: 12.08.2004
Beiträge: 2165
Z.B. so hier:

TYPOSCRIPT
/******
*
*
accessible GTMenu
 
Published in: TYPO3 
 
URL: http://www.gtmenu.de
 
Using this TypoScript, 
you can build an accessible GTMenu which may fully be styled using CSS. 
We propose using this instead of ANY GMENU which creates ugly code.
 
It renders a simple TMENU, 
and wraps an IMG_RESOURCE into the ATagParams by making this a cObject. 
There will be a podcast on typo3.org sometime soon.
 
Please note: 
in order to use {TSFE:lastImgResourceInfo|0} 
(which reads the width of the last image generated by the gifbuilder) 
you need TYPO3 4.1
 
*
*
*******/
 
 
### TypoScript ###
 
lib.gtmenu = HMENU
lib.gtmenu {
	1 = TMENU
	1 {
		wrap = <ul id="navi">|</ul>
		NO.doNotLinkIt = 1
		NO.wrapItemAndSub = <li>|</li>
		NO.stdWrap.cObject = COA
		NO.stdWrap.cObject {
			10 = TEXT
			10 {
				field = title
				typolink {
					parameter.field = uid
 
					ATagParams.cObject = COA
					ATagParams.cObject {
						10 = IMG_RESOURCE
						10.file = GIFBUILDER
						10.file {
							XY = [10.w]+[20.w]+10,70
							transparentColor = #ffffff
							10 = TEXT
							10 {
								text.field = subtitle//title
								fontSize = 14
								fontFile=fileadmin/fonts/DINPro-Bold.otf
								offset = 5,20
								fontColor = #787879
							}
 
							20 = BOX
							20 {
								dimensions = 0,30,[10.w]+[20.w]+10,30
								color = #e53827
							}
 
							30 = TEXT
							30 < .10
							30 {
								offset = 5,50
								fontColor = #ffffff
							}
						}
						10.stdWrap.dataWrap = style="width:{TSFE:lastImgResourceInfo|0}px; background-image: url('/|');"
					}
				}
			}
		}
	}
}
 
 
 
### CSS ###
 
ul#navi {list-style: none;}
ul#navi li {float: left;}
ul#navi li a {background-repeat:no-repeat; display:block; overflow:hidden;text-indent: 999em; white-space:nowrap; height:30px;}
ul#navi li a:hover, ul#navi li.current a,ul#navi li.over a {background-position:0px -30px;}


Das Bild wird dabei als CSS-Hintergrundbild eingebunden und nicht als image-tag,
das ist semantisch sauberer...

www.smedja.com - Webentwicklung( CMS TYPO3, PHP)
ProfilWWW
Verfasst am: 30. 01. 2009 [14:40]
SimonSchaufi
Themenersteller
Dabei seit: 05.03.2008
Beiträge: 7
Auf den ersten Blick glaube ich, dass das Script nicht das macht, was ich gerne hätte.

Mein bisheriges Script sieht so aus:

TYPOSCRIPT
## Sub Menu [Begin]
temp.submenu = HMENU
temp.submenu.entryLevel = 2
temp.submenu{
  1 = TMENU
  1 {
    expAll=1
    wrap=<ul class="nav3">|</ul>
    NO {
	  afterImg=fileadmin/templates/main_2/spacer.gif
	  afterImgLink=1
	  doNotShowLink=1
	  allWrap=<li>|</li>
    }
  }
  1.ACT < NO
  1.ACT = 1
  1.ACT {
	  afterImg=fileadmin/templates/main_2/spacer.gif
	  afterImgLink=1
	  doNotShowLink=1
	  allWrap=<li>|</li>
	  ATagParams=class="active"
  }
}


was hier aber fehlt ist der Menütext. den hätte ich wie gesagt gerne in einem span, der mit css versteckt wird.

ProfilWWW
Verfasst am: 05. 02. 2009 [16:49]
SimonSchaufi
Themenersteller
Dabei seit: 05.03.2008
Beiträge: 7
Lösung (zwar nicht ganz so wie ich wollte, aber fast):
TYPOSCRIPT
temp.submenu = HMENU
temp.submenu {
    entryLevel = 2
    1 = TMENU
    1.wrap = <ul class="nav3">|</ul>
    1 {
        NO {
            wrapItemAndSub = <li><span class="hidden">|</li>
            stdWrap.append = COA
            stdWrap.append {
                9 = HTML
                9.value = </span>
                10 = IMAGE
                10.file = fileadmin/templates/main_2/spacer.gif
                10.altText.field = title
                10.titleText.field = title
            }
        }
    }
    1.ACT < NO
    1.ACT = 1
    1.ACT {
        wrapItemAndSub = <li><span class="hidden">|</li>
        stdWrap.append = COA
        stdWrap.append {
            9 = HTML
            9.value = </span>
            10 = IMAGE
            10.file = fileadmin/templates/main_2/spacer.gif
            10.altText.field = title
            10.titleText.field = title
        }
        ATagParams=class="active"
    }
}


[Dieser Beitrag wurde 2mal bearbeitet, zuletzt am 05.02.2009 um 16:52.]

ProfilWWW
Verfasst am: 16. 04. 2009 [20:31]
fantasmo
Dabei seit: 05.11.2008
Beiträge: 7
Ich möchte eigentlich genau so etwas machen, allerdings kein Menü (das hab ich schonmal gemacht, auch mit TS... ging gut).

Ich möchte das bei Texten/Inhaltselementen machen.
Dass der Redakteur also einen Text eingibt...z.B. eine Bedienungsanleitung... der Redakteur soll aber dann die Möglichkeit haben, dass er ein Bild (z.B. eine Grafik, die schön bildlich erklärt, wie man z.B. eben den Videorecorder anschaltet) hochlädt (also ohne TS-Schreiberei, sondern per Bild-Upload-Dialog).
Dieses Bild soll dann den Text ersetzen (Prinzip: text-indent).

Das selbe Prinzip wär auch für Überschriften toll. Text eingeben, hinter dem verbirgt sich eigentlich eine 08/15 Arialschrift und dann lädt man aber ein Bild hoch, wo die Überschrift durch z.B. eine toll gezeichnete kleine Grafik ersetzt wird.

Das alles, "Texte/Listen und Überschriften durch Bilder ersetzen" hab ich schon sehr oft, bei Internetseiten gesehen, gehe aber davon aus, dass die Leute das dort ohne CMS einfach im HTML-Code und in der CSS geregelt haben.
Ich suche eben eine Möglichkeit, wie ich das komfortabel für Typo3-Redakteure machen könnte... Also eine Extension wär toll, hab aber bislang nichts gefunden und weiß auch nicht so recht wie man dieses Verfahren vielleicht nennt.
Profil
Verfasst am: 16. 04. 2009 [20:41]
SimonSchaufi
Themenersteller
Dabei seit: 05.03.2008
Beiträge: 7
das macht doch der GIF Builder oder?

zeigt mal bissle HTML Code, dass man sich das vorstellen kann, wie das nachher aussehen soll.

PS: eigentlich solltest du ein neues Thema aufmachen, da es nicht direkt hiermit was zu tun hat.

[Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 16.04.2009 um 20:42.]

ProfilWWW