So wenden Sie einen eingefügten Rahmen auf ein HTML-Element an, jedoch nur auf einer Seite. Bis jetzt habe ich ein Bild verwendet, um dies zu tun (GIF / PNG), das ich dann als Hintergrund verwenden und es dehnen (Wiederholung-x) und ein wenig von der Oberseite meines Blocks entfernt positionieren würde. Kürzlich habe ich die Gliederungs- CSS-Eigenschaft entdeckt, die großartig ist! Aber scheint den ganzen Block zu umkreisen ... Ist es möglich, diese Gliederungseigenschaft zu verwenden, um sie nur an einem Rand auszuführen? Wenn nicht, haben Sie auch einen CSS-Trick, der das Hintergrundbild ersetzen könnte? (damit ich die Farben der Gliederung später mit CSS usw. personalisieren kann). Danke im Voraus!
Hier ist ein Bild von dem, was ich erreichen möchte : http://exiledesigns.com/stack.jpg
Antworten:
Die Gliederung gilt in der Tat für das gesamte Element .
Nachdem ich Ihr Bild gesehen habe, erfahren Sie hier, wie Sie es erreichen.
(Oder siehe externe Demo. )
Alle Größen und Farben sind nur Platzhalter. Sie können sie so ändern, dass sie genau dem gewünschten Ergebnis entsprechen.
Wichtiger Hinweis : .element muss
display:block;
(Standard für ein div) haben, damit dies funktioniert. Wenn dies nicht der Fall ist, geben Sie bitte Ihren vollständigen Code an, damit ich eine spezifische Antwort ausarbeiten kann.quelle
\a0
dient ein nicht unterbrechender Raum.Sie können
box-shadow
damit einen Umriss auf einer Seite erstellen. Wieoutline
,box-shadow
ändert nicht die Größe des Box-Modells.Dies setzt eine Linie an die Spitze:
Ich habe eine jsFiddle erstellt, in der Sie sie in Aktion testen können.
EINSATZ
Für einen Einsatz Grenze, verwenden Sie den Einsatz Stichwort. Dies setzt eine eingefügte Linie oben:
Mit durch Kommas getrennten Anweisungen können mehrere Zeilen hinzugefügt werden. Dies setzt eine eingefügte Linie oben und links:
Weitere Details dazu
box-shadow
finden Sie auf der MDN-Seite .quelle
Versuchen Sie es mit Schatten (wie Rand) + Rand
quelle
Ich weiß, dass das alt ist. Aber ja. Ich bevorzuge eine viel kürzere Lösung als die Antwort von Giona
quelle
Ich möchte meinem Eingabefeld einen Rahmen geben, den Umriss im Fokus entfernen und stattdessen den Rahmen "umreißen":
Sie können dies auch mit einem transparenten Rand tun:
quelle
Das Tolle an HTML / CSS ist, dass es normalerweise mehr als einen Weg gibt, um den gleichen Effekt zu erzielen. Hier ist eine andere Lösung, die macht, was Sie wollen:
http://jsfiddle.net/10basetom/uCX3G/1/
quelle
nur eine Seite
outline
funktioniert nichtborder-left/right/top/bottom
Wenn ich Ihren Kommentar richtig bekomme
quelle