Heim > Web-Frontend > CSS-Tutorial > Verschiedene Methoden und Ideen zum Wortaustausch mit Bildern_Erfahrungsaustausch

Verschiedene Methoden und Ideen zum Wortaustausch mit Bildern_Erfahrungsaustausch

WBOY
Freigeben: 2016-05-16 12:10:22
Original
1443 Leute haben es durchsucht

Heute ist ein Freund beim Erstellen einer Webseite auf ein Problem gestoßen: Er wollte den Hintergrund des Links beibehalten, wollte aber auch, dass der Text im Link verschwindet! Aber nachdem ich lange daran gearbeitet hatte, wurde ich diesen Text immer noch nicht los. Ich denke, dass viele Freunde, die Standards studieren, auf dieses Problem gestoßen sind. Hier werde ich einige häufig verwendete Methoden aufschreiben und die Ideen erläutern, in der Hoffnung, Freunden zu helfen, die gerade erst anfangen zu lernen.

„Bilder durch Wörter ersetzen“ bedeutet, Textausdrücke durch Bilder zu ersetzen. Wir alle wissen, dass die Darstellung von Text in Browsern sehr schlecht ist, dass sie gezackt ist, nicht gerundet werden kann und nicht viele Effekte haben kann. Unter normalen Umständen muss der Inhaltsteil einer Webseite nicht beeinflusst werden, in WEB-Standards werden diese jedoch häufig für Logos und Titel benötigt. Wenn wir dazu eine Tabelle verwenden, posten wir einfach irgendwo ein Bild. Diese Methode ist relativ einfach, aber für die Suche nicht förderlich. Daher müssen wir dies standardmäßig tun, um sicherzustellen, dass die Webseite in einem guten Zustand ist und für die Suche geeignet ist. Wird normalerweise wie in der Abbildung

angezeigt: (display:none;) Dadurch verschwindet nicht nur der Inhalt des Behälters, sondern auch der Behälter selbst. Daher müssen wir innerhalb des Containers einen weiteren Container erstellen, um sicherzustellen, dass der Hintergrund im Container nach dem Verschwinden des inneren Teils normal angezeigt werden kann. Beispiel:

Code kopieren Der Code lautet wie folgt:
#logo {display:none; background:URL; width:300px; height:100px;}

Wenn es so geschrieben ist, wird man überhaupt nichts sehen. Wie schreibt man es also richtig? Schauen Sie sich das Beispiel an:

Code kopieren Der Code lautet wie folgt:
#logo {background:URL; width:300px; height:100px;}#logo span {display:none;}
Bitte Beachten Sie den obigen Code. Der Hintergrund wird unter #logo definiert und die Spanne #logo hat keinen Stil außer display:none;. Da der Container mit dem definierten display:none;-Attribut nichts sieht, ist es eine Verschwendung, andere Stile zu definieren. Es gibt immer noch Probleme damit. Dies ist ein Beispiel ohne Link. Was sollen wir also tun, wenn es einen Link gibt? Schauen wir uns ein weiteres Beispiel an:

Code kopieren Der Code lautet wie folgt:
#logo {background:URL; height:100px;}# logo a {display:none;}

Können Sie erraten, was dieser Code anzeigen kann? Tatsache ist, dass der Hintergrund angezeigt wird, der Link jedoch weg ist. Wie oben erwähnt: Der Container selbst, dem das Attribut display:none; zugewiesen ist, verschwindet ebenfalls. Dann wissen wir genau, dass wir diesem A-Tag einen Container hinzufügen müssen. Schauen wir uns das Beispiel noch einmal an:

Code kopieren Der Code lautet wie folgt:
< div id="logo ">Titelinhalt
#logo {background:URL; width:300px; height:100px;}#logo a span {display:none;}
Ist das richtig? Funktioniert immer noch nicht, warum? Wir alle wissen, dass A kein Tag auf Blockebene ist, was bedeutet, dass die Höhe und Breite von A durch den Inhalt bestimmt werden. Nachdem der Inhalt verschwunden ist, sind die Attribute Höhe und Breite nicht mehr vorhanden , also wird der Link Es ist ein Link ohne Hotzone geworden. Es darf nicht beleuchtet sein. Wir müssen den obigen Code erneut ändern.

Code kopieren Der Code lautet wie folgt:
#logo a {background:URL; width:300px; 100px; display:block;}#logo a span {display:none;}

Beachten Sie, dass das Attribut des A-Tags hier mit display:block hinzugefügt werden muss, um zu erzwingen, dass es sich um ein Element auf Blockebene handelt. Auf diese Weise wird aus dem A-Tag ein Linkformular mit einer Breite von 300 und einer Höhe von 100, mit Hintergrund und ohne Textinhalt. Jeder hat gesehen, dass dem A-Tag oben ein Span-Tag hinzugefügt wurde, was etwas überflüssig erscheint. Kann der Effekt ohne Spanne erzielt werden? Ja, aber die Idee ist anders, es handelt sich um die folgende Positionsverschiebungsmethode.

Positionsverschiebung: Das heißt, der Inhalt wird aus dem Anzeigebereich verschoben. Schauen wir uns den Code an, um diese Methode zu verstehen.

Code kopieren Der Code lautet wie folgt:
#logo, #logo a {width:300px; height:hidden;}#logo a {background :URL; padding:100px 0 0; display:block;}
In CSS haben #logo und A einen ausgeblendeten Überlauf (overflow:hidden;), was bedeutet, dass dies der Fall ist, wenn die Größe 300*100 überschreitet verborgen sein. Wir sehen, dass A mit einem Abstand definiert ist: 100px 0 0; Dieser obere Abstand verschiebt den Inhalt einfach aus dem Anzeigebereich. Warum verwendet #logo also auch overflow:hidden;? Da es im IE einen kleinen Fehler gibt, kann der Inhalt von A nicht überlaufen und ausgeblendet werden. Daher muss ein overflow:hidden zum übergeordneten Tag hinzugefügt werden.

Die oben genannten sind nur zwei meiner am häufigsten verwendeten Natürlich gibt es auch andere Methoden, von denen jede ihre eigenen Nachteile hat, aber die verschiedenen Methoden ergänzen sich auch. Sie können es je nach Situation bei der Bewerbung verwenden.
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage