Antwort
 
LinkBack Themen-Optionen Thema bewerten Ansicht
  #1  
Alt 09.10.07, 11:52
Forum Zuschauer
 
Registriert seit: 25.09.07
Alter: 38
Beiträge: 10

languageMenu.php Flaggen und Text nicht vertical-align


Hallo Forum,

mein Problem:
Die Flaggen und der Text sollen vertical in der Mitte sein - sind sie aber nicht.

Hier die Seite zum anschauen:
CLW Bonn

TS im Setup:
Typoscript-Code:
1:
2:
3:
4:
page.10.marks {
SPRACHWECHSEL = PHP_SCRIPT
SPRACHWECHSEL.file = fileadmin/example_languageMenu02.php
}
Hier die languageMenu.php:
PHP-Code:
 // First, select all pages_language_overlay records on the current page. Each represents a possibility for a language.
$res $GLOBALS['TYPO3_DB']->exec_SELECTquery('*''pages_language_overlay''pid='.intval($GLOBALS['TSFE']->id).$GLOBALS['TSFE']->sys_page->enableFields('pages_language_overlay'), 'sys_language_uid');

$langArr = array();
while(
$row $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res))    {
    
$langArr[$row['sys_language_uid']] = $row['title'];
}

// Little red arrow, which is inserted to the left of the flag-icon if the TSFE->sys_language_uid equals the language uid (notice that 0=english, 1=danish and 2=german is SPECIFIC to this database, because these numbers refer to uid's of the table sys_language)
$pointer '<img src="fileadmin/imgs/designvorlage/content_client.gif" width="7" height="10" alt="" />'.'&nbsp;';

// Set each icon. If the language is the current, red arrow is printed to the left. If the language is NOT found (represented by a pages_language_overlay record on this page), the icon is dimmed.
$flags = array();
$flags[] = ($GLOBALS['TSFE']->sys_language_uid==0?$pointer:'<img src="fileadmin/imgs/designvorlage/1pxtrans.gif" width="7" height="10" vspace="2" alt="" />'.'&nbsp;').'<a href="'.htmlspecialchars('index.php?id='.$GLOBALS['TSFE']->id.'&L=0').'" target="_top"><img src="fileadmin/imgs/designvorlage/flag_de.gif" width="21" height="13" hspace="0" border="0" alt="" />&nbsp;Deutsch</a>
<img src="fileadmin/imgs/designvorlage/1pxtrans.gif" width="7" height="10" alt="" />
'
;

$flags[] = ($GLOBALS['TSFE']->sys_language_uid==1?$pointer:'<img src="fileadmin/imgs/designvorlage/1pxtrans.gif" width="7" height="10" vspace="2" alt="" />'.'&nbsp;').'<a href="'.htmlspecialchars('index.php?id='.$GLOBALS['TSFE']->id.'&L=1').'" target="_top"><img src="fileadmin/imgs/designvorlage/flag_uk'.($langArr[1]?'':'_d').'.gif" width="21" height="13" hspace="0" border="0" alt="" />&nbsp;English</a>';


// Make the little menu. Notice, the menu does ONLY transfer the page-id and the "L" variable (which is also SPECIFIC for this website because "L" has been used in the extension template used to control the language setup)
$content '<table width="180px" class="sprachwechsel" border="0" cellpadding="0" cellspacing="0"><tr><td>'.implode($flags).'
</td>
</tr>
</table>'
;
?> 
Hier mein CSS:
HTML-Code:
.sprachwechsel { font-family: verdana; color: #ffffff; font-weight: bold;
font-size: 10px; text-decoration: none; padding-top:0; margin-top:0;
margin-left:0; vertical-align:middle; text-align:center;}
Was mache ich falsch? Warum sind die Flaggen und die Schrift dahinter nicht vertical auf einer Linie?

Vielen Dank für eure Hilfe!

Chris

Geändert von ChristianS (16.10.07 um 14:58 Uhr).
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #2  
Alt 09.10.07, 14:04
Benutzerbild von Kurt51
TYPO3forum.net Donater
 
Registriert seit: 21.07.06
Ort: Jülich
Beiträge: 1.128
Kurt51 eine Nachricht über Yahoo! schicken Kurt51 eine Nachricht über Skype™ schicken

Zitat:
Zitat von ChristianS Beitrag anzeigen
Hallo Forum,

mein Problem:
Die Flaggen und der Text sollen vertical in der Mitte sein - sind sie aber nicht.

Hier die Seite zum anschauen:
CLW Bonn

TS im Setup:
Typoscript-Code:
1:
2:
3:
4:
page.10.marks {
SPRACHWECHSEL = PHP_SCRIPT
SPRACHWECHSEL.file = fileadmin/example_languageMenu02.php
}
Hier die languageMenu.php:
PHP-Code:
 // First, select all pages_language_overlay records on the current page. Each represents a possibility for a language.
$res $GLOBALS['TYPO3_DB']->exec_SELECTquery('*''pages_language_overlay''pid='.intval($GLOBALS['TSFE']->id).$GLOBALS['TSFE']->sys_page->enableFields('pages_language_overlay'), 'sys_language_uid');

$langArr = array();
while(
$row $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res))    {
    
$langArr[$row['sys_language_uid']] = $row['title'];
}

// Little red arrow, which is inserted to the left of the flag-icon if the TSFE->sys_language_uid equals the language uid (notice that 0=english, 1=danish and 2=german is SPECIFIC to this database, because these numbers refer to uid's of the table sys_language)
$pointer '<img src="fileadmin/imgs/designvorlage/content_client.gif" width="7" height="10" alt="" />'.'&nbsp;';

// Set each icon. If the language is the current, red arrow is printed to the left. If the language is NOT found (represented by a pages_language_overlay record on this page), the icon is dimmed.
$flags = array();
$flags[] = ($GLOBALS['TSFE']->sys_language_uid==0?$pointer:'<img src="fileadmin/imgs/designvorlage/1pxtrans.gif" width="7" height="10" vspace="2" alt="" />'.'&nbsp;').'<a href="'.htmlspecialchars('index.php?id='.$GLOBALS['TSFE']->id.'&L=0').'" target="_top"><img src="fileadmin/imgs/designvorlage/flag_de.gif" width="21" height="13" hspace="0" border="0" alt="" />&nbsp;Deutsch</a>
<img src="fileadmin/imgs/designvorlage/1pxtrans.gif" width="7" height="10" alt="" />
'
;

$flags[] = ($GLOBALS['TSFE']->sys_language_uid==1?$pointer:'<img src="fileadmin/imgs/designvorlage/1pxtrans.gif" width="7" height="10" vspace="2" alt="" />'.'&nbsp;').'<a href="'.htmlspecialchars('index.php?id='.$GLOBALS['TSFE']->id.'&L=1').'" target="_top"><img src="fileadmin/imgs/designvorlage/flag_uk'.($langArr[1]?'':'_d').'.gif" width="21" height="13" hspace="0" border="0" alt="" />&nbsp;English</a>';


// Make the little menu. Notice, the menu does ONLY transfer the page-id and the "L" variable (which is also SPECIFIC for this website because "L" has been used in the extension template used to control the language setup)
$content '<table width="180px" class="sprachwechsel" border="0" cellpadding="0" cellspacing="0"><tr><td>'.implode($flags).'
</td>
</tr>
</table>'
;
?> 
Hier mein CSS:
HTML-Code:
.sprachwechsel { font-family: verdana; color: #ffffff; font-weight: bold;
font-size: 10px; text-decoration: none; padding-top:0; margin-top:0;
margin-left:0; vertical-align:middle; text-align:center;}
Was mache ich falsch? Warum sind die Flaggen und die Schrift dahinter nicht vertical auf einer Linie?

Vielen Dank für eure Hilfe!

Chris
Da fehlt nur noch ein wenig in der css:
< td style="height:24px; vertical-align:middle;" > Vielleicht muss Du dem img auch noch "float:left" mitgeben!?
__________________
Herzliche Grüße, Kurt
kupix webdesign aus Jülich, NRW
(... und, denkt dran - immer schön fröhlich und besonnen bleiben!)
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #3  
Alt 09.10.07, 14:46
Forum Zuschauer
 
Registriert seit: 25.09.07
Alter: 38
Beiträge: 10

Zitat:
Zitat von Kurt51 Beitrag anzeigen
Da fehlt nur noch ein wenig in der css:
< td style="height:24px; vertical-align:middle;" > Vielleicht muss Du dem img auch noch "float:left" mitgeben!?
Habe die Tabelle unten in languageMenu.php ergänzt:
PHP-Code:
$content '<table width="180px" class="sprachwechsel" border="0" cellpadding="0" cellspacing="0"><tr><td style="height:24px; vertical-align:middle;" >'.implode($flags).'
</td>
</tr>
</table>'

Das hat nicht den gewünschten Erfolg.


Dann habe ich "Style="float:left;" in die img-tags eingefügt:
PHP-Code:
$flags = array();
$flags[] = ($GLOBALS['TSFE']->sys_language_uid==0?$pointer:'<img src="fileadmin/imgs/designvorlage/1pxtrans.gif" width="7" height="10" vspace="2" alt="" />'.'&nbsp;').'<a href="'.htmlspecialchars('index.php?id='.$GLOBALS['TSFE']->id.'&L=0').'" target="_top"><img src="fileadmin/imgs/designvorlage/flag_de.gif" width="21" height="13" hspace="0" border="0" style="float:left;" alt="" />&nbsp;Deutsch</a>
<img src="fileadmin/imgs/designvorlage/1pxtrans.gif" width="7" height="10" alt="" />
'
;

$flags[] = ($GLOBALS['TSFE']->sys_language_uid==1?$pointer:'<img src="fileadmin/imgs/designvorlage/1pxtrans.gif" width="7" height="10" vspace="2" alt="" />'.'&nbsp;').'<a href="'.htmlspecialchars('index.php?id='.$GLOBALS['TSFE']->id.'&L=1').'" target="_top"><img src="fileadmin/imgs/designvorlage/flag_uk'.($langArr[1]?'':'_d').'.gif" width="21" height="13" hspace="0" border="0" style="float:left;" alt="" />&nbsp;English</a>'
Da haben sich die Flaggen dann total verschoben. Schau mal:
CLW Bonn

Ich glaube, ich habe Dich nicht richtig verstanden. Kannst Du mir das anders erklären, bitte.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #4  
Alt 09.10.07, 15:26
Benutzerbild von Kurt51
TYPO3forum.net Donater
 
Registriert seit: 21.07.06
Ort: Jülich
Beiträge: 1.128
Kurt51 eine Nachricht über Yahoo! schicken Kurt51 eine Nachricht über Skype™ schicken

Zitat:
Zitat von ChristianS Beitrag anzeigen
Habe die Tabelle unten in languageMenu.php ergänzt:
PHP-Code:
$content '<table width="180px" class="sprachwechsel" border="0" cellpadding="0" cellspacing="0"><tr><td style="height:24px; vertical-align:middle;" >'.implode($flags).'
</td>
</tr>
</table>'

Das hat nicht den gewünschten Erfolg.


Dann habe ich "Style="float:left;" in die img-tags eingefügt:
PHP-Code:
$flags = array();
$flags[] = ($GLOBALS['TSFE']->sys_language_uid==0?$pointer:'<img src="fileadmin/imgs/designvorlage/1pxtrans.gif" width="7" height="10" vspace="2" alt="" />'.'&nbsp;').'<a href="'.htmlspecialchars('index.php?id='.$GLOBALS['TSFE']->id.'&L=0').'" target="_top"><img src="fileadmin/imgs/designvorlage/flag_de.gif" width="21" height="13" hspace="0" border="0" style="float:left;" alt="" />&nbsp;Deutsch</a>
<img src="fileadmin/imgs/designvorlage/1pxtrans.gif" width="7" height="10" alt="" />
'
;

$flags[] = ($GLOBALS['TSFE']->sys_language_uid==1?$pointer:'<img src="fileadmin/imgs/designvorlage/1pxtrans.gif" width="7" height="10" vspace="2" alt="" />'.'&nbsp;').'<a href="'.htmlspecialchars('index.php?id='.$GLOBALS['TSFE']->id.'&L=1').'" target="_top"><img src="fileadmin/imgs/designvorlage/flag_uk'.($langArr[1]?'':'_d').'.gif" width="21" height="13" hspace="0" border="0" style="float:left;" alt="" />&nbsp;English</a>'
Da haben sich die Flaggen dann total verschoben. Schau mal:
CLW Bonn

Ich glaube, ich habe Dich nicht richtig verstanden. Kannst Du mir das anders erklären, bitte.
Das mit dem float war nichts!
Ansonsten sieht das im Firefox und im IE7 gut aus! Mit welchem Browser "entwickelst" Du? Mit Firefox und dem Addon "Firebug" kannst Du mit den CSS-Daten rumexperimentieren in den live-Daten.
Vielleicht nimmet der eine oder andere Browser die CSS-Daten zum TR-Tag!? Dort kannst Du sie auch mal eintragen. Ich würde das auch eher in die CSS-Datei als Klasse eintragen und dann im TS dem TD eine eigene Klasse zuteilen oder eben table.sprachwechsel td { height:25px; ... }
__________________
Herzliche Grüße, Kurt
kupix webdesign aus Jülich, NRW
(... und, denkt dran - immer schön fröhlich und besonnen bleiben!)
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #5  
Alt 16.10.07, 14:44
Forum Zuschauer
 
Registriert seit: 25.09.07
Alter: 38
Beiträge: 10

Lösung


HIER DIE LÖSUNG DES PROBLEMS:

In der Datei languageMenu.php habe ich die Worte "Deutsch" und "English" einfach jeweils mit einem font-tag umgeben:

PHP-Code:
...
<
font class="sprechwechsel">Deutsch</font>
...
...
<
font class="sprechwechsel">English</font>
... 
(Den Rest der php-Datei seht ihr ja oben im thread)

Dann in meine css Datei folgendes:

HTML-Code:
font.sprechwechsel {
    position: relative;
    top: -3px;
}
1. position: relative; MUSS sein, sonst geht es nicht
2. die negative Zahl "-3px" gibt den Wert an, um den der Text weiter oben sitz als andere Contents.

Hoffe, das hilft auch anderen weiter. ;-)
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Gelöst CSS-Styled-Content Header text-align mr_flory TYPO3 4.x Fragen und Probleme 2 09.09.07 15:42
Fahnen im Sprachwechsler: languageMenu.php paopao TYPO3 4.x Fragen und Probleme 15 17.11.06 12:58
languageMenu.php Wo kann man die downloaden? bjs1977 TYPO3 4.x Fragen und Probleme 3 25.04.06 09:35
LanguageMenu und REAL URL - wo klemmts??? dgraefe Suchmaschinenfreundliche URLs (SEO) 6 09.01.06 11:48
vertical-align: middle - Problem mavo HTML & CSS 2 06.12.05 09:41


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:01 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0