XHTMLforum

XHTMLforum (http://xhtmlforum.de/index.php)
-   CSS (http://xhtmlforum.de/forumdisplay.php?f=73)
-   -   media="handheld" (http://xhtmlforum.de/showthread.php?t=64496)

gabischatz 30.04.2011 12:59

media="handheld"
 
Hi ich möchte ein Style für eine Seite erstellen nur für Handys.
Dazu müsste ich auf der Startseite eine Weiterleitung zur Betreffenden Seite einrichten.
Ich habe leider kein Internet fähiges Handy und auch keine Flatrate.

1. Wie wird die Weiterleitung zur Seite realisiert und wie kann ich die Seiten Prüfen ob sie richtig dargestellt werden?
2. Gibt es vielleicht eine Freeware die die Anzeige übernimmt?
3. Werden die Größenangaben für ein Styl in em oder in px Angaben gemacht?
4. Spielt das Betriebssystem der Handys eine Rolle?
ich bin für jede Antwort dankbar, Beispiele sind eine tolle Möglichkeit schnell zu begreifen wie es funktioniert.
MfG gabischatz

philosapiens 30.04.2011 13:51

Hallo,

zu 3 & 4) Cascading Style Sheets { Tutorials : CSS-Layouts für Kleinbildschirme }

und

Sie suchen nach »handheld« auf webdesign weisshart

Viel Erfolg! :p

take_a_7 30.04.2011 15:34

Zitat:

Zitat von gabischatz (Beitrag 492845)
Hi ich möchte ein Style für eine Seite erstellen nur für Handys.
Dazu müsste ich auf der Startseite eine Weiterleitung zur Betreffenden Seite einrichten.

Nein. Du brauchst ein Stylesheet mit media="handheld", wie schon dein Titel sagt. Dort kommen dann die Anweisungen rein, die nur Handys kriegen. Dadurch kannst du, bei vernünftigem Quelltext, die Seite komplett umgestalten. Mit so einer HTML-Vergewaltigung wie in deiner Navigationsleiste kommst du da aber nicht weit.

gruß,
take

gabischatz 30.04.2011 17:36

Danke für die Antworten
Hier ein Link zum Firefox Extension User Agent Switchermit dem man die Style kontrollieren kann und und noch ein Link für ein PHP Script.

gabischatz 30.04.2011 18:29

Ich habe mal das Script von Seite geändert um zur handheldsite.php weiterzuleiten.
PHP-Code:

<?php
/* Erklärung:                                                       *
 * Im array $agents werden charakteristische Anteile der User Agent *
 * Strings der häufigsten Handhelds eingetragen,                    *
 * darunter eben auch "iPhone".                                     */

$agents = array(
    
'Windows CE''Pocket''Mobile',
    
'Portable''Smartphone''SDA',
    
'PDA''Handheld''Symbian',
    
'WAP''Palm''AvantGo''iPhone''BlackBerry''MOT-',
    
'cHTML''BlackBerry''Opera Mini',
    
'Nokia''Palm''Blazer''SonyEricsson''Minimo'
);

for (
$i=0$i<count($agents); $i++) {
    if(isset(
$_SERVER["HTTP_USER_AGENT"])
   && 
strpos($_SERVER["HTTP_USER_AGENT"], $agents[$i]) !== false) {
            
$handheldsite 'refresh" content = "0; URL=http://www.DeineSeite/handheldsite.php';
   }
}
?>
<meta http-equiv="<?php echo (!$handheldsite)?'expires" content="'.
date("D").', '.
date("d").'.'.
date("M").'.'.
date("Y").'  '.
//date("n").
date("H").':'.
date("i").':'.
date("s").' '.
'GMT':"".$handheldsite ?> ">

und das Script erweitert um media="handheld".
PHP-Code:

<?php
/* Erklärung:                                                       *
 * Im array $agents werden charakteristische Anteile der User Agent *
 * Strings der häufigsten Handhelds eingetragen,                    *
 * darunter eben auch "iPhone".                                     */

$agents = array(
    
'Windows CE''Pocket''Mobile',
    
'Portable''Smartphone''SDA',
    
'PDA''Handheld''Symbian',
    
'WAP''Palm''AvantGo''iPhone''BlackBerry''MOT-',
    
'cHTML''BlackBerry''Opera Mini',
    
'Nokia''Palm''Blazer''SonyEricsson''Minimo'
);

for (
$i=0$i<count($agents); $i++) {
    if(isset(
$_SERVER["HTTP_USER_AGENT"])
   && 
strpos($_SERVER["HTTP_USER_AGENT"], $agents[$i]) !== false) {
       
$sitestyle "/Neu/css/handheld.css";       
        
$media "handheld";
   }
}
?>

<link rel="stylesheet" media="<?php echo (!$media)?'screen':"".$media ?>"
href=" <?php echo (!$sitestyle)?'/css/css.css':"".$sitestyle ?>"
type="text/css" >

MfG gabischatz

take_a_7 30.04.2011 18:46

Das was du da machst ist so ziemlich von hinten durch die Brust ins Auge! Handys werden stylesheets mit media="handheld" auswerten, desktopbrowser nicht. Dazu musst du nicht gegen eine möglicherweise nicht vollständige UserAgent Liste checken.

gruß,
take

inta 30.04.2011 20:09

Wobei es da ein prominentes Negativbeispiel gibt, denn das iPhone hält sich scheinbar für ein großes Gerät, jedenfalls hält es sich nicht für ein Handheld und wertet die entsprechend markierten Stylesheets nicht aus. Da die meisten Mobiltelefone recht modern sind, würde ich hier mit Mediaqueries arbeiten, damit erwischt man dann auch das iPhone (sofern man die Pixeldichte entsprechend berücksichtigt, die Breitenangaben sind im Webkit leider auch kaputt).


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:06 Uhr.

Powered by vBulletin® Version 3.8.11 (Deutsch)
Copyright ©2000 - 2024, vBulletin Solutions, Inc.

© Dirk H. 2003 - 2023