2009-03-13 11 views
0

Ich habe eine Liste von Links, die einige wirklich seltsame Verhalten aufweisen. Der Code ist:Weird HTML-Fehler

<ul id="home" class="panel" title="title_here" selected="true"> 
    <li><a href="#search">Search for Name</a></li> 
    <li><a href="#browse">Browse by Department</a></li> 
</ul> 

Es ist Teil einer iPhone Website, die iui Framework. Ich weiß, dass es besser ist, aber mein Chef mag das Aussehen des iUI-Frameworks mehr, also muss ich das verwenden. Dieses Framework arbeitet mit dem Attribut "selected =" true "" attr, und wenn ein Link Sie zu einer anderen ID führt, verwendet js das Attribut "selected =" true "für die ID, zu der Sie eine Verknüpfung herstellen.

Mein Problem ist: Wenn Sie einem Link folgen und dann "zurück" gehen, ändert sich der anklickbare Abschnitt nur zum Hintergrundbild des Links anstelle des gesamten "li". Hier ist die css:

body > ul > li > a { 
display: block; 
margin: -8px 0 -8px -10px; 
padding: 8px 32px 8px 10px; 
text-decoration: none; 
color: inherit; 
background: url(listArrow.png) no-repeat right center; 
} 

Würde die tatsächliche Bildgröße (in PS, Farbe, etc) zu erweitern dies beheben?

Antwort

1

Wenn Sie können, vermeiden Sie negative Margen so viel wie Sie können. Sie können sehr, sehr böse werden.

Schüsse im Dunkeln:

  • gesetzt haben Sie alle mögliche Arten für einen bis: link, a: visited a: schweben? Wenn nicht, fügen Sie dann den aktuellen Stil und prüfen Sie erneut

Beispiel:

body > ul > li > a, 
body > ul > li > a:link, 
body > ul > li > a:visited, 
body > ul > li > a:hover, 
body > ul > li > a:active { 
    display: block; 
    margin: -8px 0 -8px -10px; 
    padding: 8px 32px 8px 10px; 
    text-decoration: none; 
    color: inherit; 
    background: url(listArrow.png) no-repeat right center; 
} 
  • Versuchen Polsterung an der LI, statt negativen Margen zu A der Einstellung;

  • Versuchen Sie, Hintergrund zu LI's statt A's zu setzen, es erlaubt das Design, und beseitigt Polsterungen in A's.

Es klingt für mich, dass es tatsächlich ein Bug in iPhone/IUI ist; klar, es klappt gut einmal, aber nicht der nächste, da ist was lustiges los.

+0

Ich bin froh, dass ich helfen konnte! Nur aus Neugier: Was haben Sie genau getan, um das zu lösen? I.e. Welchen meiner drei Vorschläge hast du verfolgt? – Seb

+0

Der erste, der die a: Pseudoklassen auf den gleichen Stil setzt –