HTML link mit Polsterung und CSS-active funktioniert nicht

HTML-link mit Polsterung und CSS-active funktioniert nicht in Google Chrome, Apple Safari, Opera, Mozilla Firefox. Aber es funktioniert in Internet Explorer 8.

Hier ist ein Beispiel code. Versuchen Sie, klicken Sie auf Stapel - link nicht funktioniert, klicken Sie auf die Überlauf - link funktioniert. Durch die Werke, die ich meine - navigieren Sie zu StackOverflow-Seite.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
 "http://www.w3.org/TR/html4/strict.dtd">
<html>
    <head>
        <title>css active padding href problem</title>
        <style type="text/css">
            a{
                display: inline-block;
                background:#CCC;
                border:1px solid #666;
                padding:0 35px 0 0;
            }
            a:active{
                padding:0 0 0 35px;
            }
        </style>
    </head>
    <body>
        <div>
            <p>Click on <i>Stack</i> - href does not work.
               Click on <i>Overflow</i> - href works.
               All browsers are affected.
               Except IE.</p>
            <a href="http://stackoverflow.com/">StackOverflow</a>
        </div>
    </body>
</html>

Warum es nicht funktioniert in den meisten Browsern?

Edit 2: Wenn Sie ändern :aktiv :hover, dann alles wie erwartet funktioniert in allen Browsern auf passiert und der Browser navigiert zu stackoverflow.com

Edit 3: Zu beweisen, dass es möglich ist, klicken Sie auf Polsterung Bereich, den Sie ändern können, Stil:

<style type="text/css">
    a{
        padding:0 0 0 35px;
    }
</style>

Wenn link "bewegt", als jemand erwähnte, dann warum ist es möglich, klicken Sie auf bereits "verschoben" - link?

  • Aktualisiert code - Hinzugefügt, hintergrund und Rahmen zu klären, das Objekt nicht zu bewegen.
InformationsquelleAutor Maris B. | 2010-11-25
Schreibe einen Kommentar