Heim > Web-Frontend > Front-End-Fragen und Antworten > CSS-Tipps: So erzielen Sie einen Bildlöscheffekt

CSS-Tipps: So erzielen Sie einen Bildlöscheffekt

PHPz
Freigeben: 2023-04-23 17:17:06
Original
780 Leute haben es durchsucht

Bei der Webentwicklung müssen wir häufig einige Spezialeffekte implementieren, um die Interaktivität und Schönheit der Seite zu verbessern. Unter diesen ist der Bildlöscheffekt eine häufige Anforderung. Beispielsweise können Benutzer auf einer Produktlistenseite nicht gewünschte Produkte löschen, indem sie auf die Schaltfläche „Löschen“ klicken. Zu diesem Zeitpunkt sollten auch die entsprechenden Produktbilder auf der Seite gelöscht werden. Wie lässt sich dieser Effekt erzielen? In diesem Artikel wird eine Methode vorgestellt, mit der mithilfe von CSS ein Bildlöscheffekt erzielt werden kann.

Zunächst müssen wir klarstellen, dass das Löschen eines Bildes nicht bedeutet, dass das Bild von der Seite verschwindet, sondern dass das Bild auf der Seite keinen Platz und kein Layout mehr einnimmt. Wir können den Effekt der Bildlöschung erzielen, indem wir die Breite und Höhe des Bildes auf 0 und dann die Höhe seines äußeren Containerelements auf 0 setzen. Die spezifischen Implementierungsschritte sind wie folgt:

Schritt 1: HTML-Struktur

Wir gehen davon aus, dass wir eine Produktlistenseite implementieren möchten. Zu jedem Produkt gibt es ein Bild und einen Beschreibungstext. Unsere HTML-Struktur sollte so aussehen:

<div class="item">
    <img src="商品图片的URL" alt="商品描述">
    <div class="description">
        商品描述文字
    </div>
    <button class="delete-btn">删除</button>
</div>
Nach dem Login kopieren

Im obigen Code definieren wir für jedes Produkt ein äußeres Containerelement .item, das das Produktbild &lt enthält ;img>, Produktbeschreibungstext <div> und Schaltfläche „Löschen“ <button>. .item,里面包含了商品图片<img>、商品描述文字<div>和“删除”按钮<button>

步骤2:CSS样式

(1) 清除图片默认样式

为了让图片能够完全按照我们的要求来显示,我们需要清除图片的默认样式,如下:

img {
    display:block;
    max-width:100%; /* 避免图片过大超出容器 */
    height:auto; /* 根据宽度等比缩放高度 */
}
Nach dem Login kopieren

以上代码中,我们将图片的display属性设置为block,这样图片就可以像块级元素一样定位、居中等操作;同时,我们将图片的max-width设置为100%,以避免图片过大超出其容器;最后,我们将图片的height设为auto,这样图片高度就会根据宽度自动等比缩放,避免图片变形。

(2) 删除图片样式

接下来,我们就需要设置删除图片的样式了。我们可以通过将商品图片宽度和高度设置为0,再将外层容器元素高度也设为0,来实现图片删除的效果,代码如下:

.item.deleted img {
    width:0;
    height:0;
}

.item.deleted {
    height:0;
}
Nach dem Login kopieren

代码中,我们首先为删除状态下的商品添加一个.deleted类,然后使用CSS选择器将其图片的宽度和高度都设为0,同时将其外层容器元素的高度也设为0。

步骤3:JavaScript代码

最后,我们需要将删除按钮的点击事件与删除图片的效果进行绑定。代码如下:

//获取所有删除按钮
var deleteBtns = document.querySelectorAll('.delete-btn');

//给每个按钮添加点击事件
deleteBtns.forEach(function(btn) {
    btn.addEventListener('click', function() {
        var item = this.parentNode;
        item.classList.add('deleted'); //添加.deleted类
    });
});
Nach dem Login kopieren

代码中,我们首先通过document.querySelectorAll方法获取页面中所有的删除按钮,并使用forEach循环遍历它们。然后,我们为每个按钮添加点击事件,在点击时找到对应的商品容器元素.item,并添加.deleted

Schritt 2: CSS-Stil

(1) Löschen Sie den Standardstil des Bildes

Damit das Bild genauso angezeigt wird wie wir erfordern, müssen wir den Standardstil des Bildes wie folgt löschen: #🎜🎜#rrreee#🎜🎜#Im obigen Code setzen wir das display-Attribut des Bildes auf block , damit das Bild so aussehen kann, als wären Elemente auf Blockebene gleichzeitig auf die gleiche Weise positioniert und zentriert, setzen wir die max-width des Bildes auf 100 % Um zu verhindern, dass das Bild zu groß wird, um seinen Container zu überschreiten, setzen wir schließlich die Höhe des Bildes auf auto, sodass die Bildhöhe automatisch proportional zum skaliert wird Breite, um Bildverzerrungen zu vermeiden. #🎜🎜##🎜🎜# (2) Bildstil löschen #🎜🎜##🎜🎜#Als nächstes müssen wir den Stil zum Löschen von Bildern festlegen. Wir können den Effekt der Bildlöschung erzielen, indem wir die Breite und Höhe des Produktbilds auf 0 und dann die Höhe des äußeren Containerelements auf 0 setzen. Der Code lautet wie folgt: #🎜🎜#rrreee#🎜🎜#In Im Code fügen wir dem Produkt im gelöschten Zustand zunächst eine .deleted-Klasse hinzu und setzen dann mit dem CSS-Selektor die Breite und Höhe seines Bildes auf 0 sowie die Höhe seines Bildes äußeres Containerelement auf 0. #🎜🎜##🎜🎜#Schritt 3: JavaScript-Code #🎜🎜##🎜🎜#Zuletzt müssen wir das Klickereignis der Schaltfläche „Löschen“ an den Effekt des Löschens des Bildes binden. Der Code lautet wie folgt: #🎜🎜#rrreee#🎜🎜#Im Code erhalten wir zunächst alle Löschschaltflächen auf der Seite über die Methode document.querySelectorAll und verwenden forEach um sie zu durchlaufen. Dann fügen wir jeder Schaltfläche ein Klickereignis hinzu, suchen beim Klicken das entsprechende Produktcontainerelement <code>.item und fügen die Klasse .deleted hinzu, um das entsprechende Produktbild zu löschen . #🎜🎜##🎜🎜#Zusammenfassung: #🎜🎜##🎜🎜# Mit der oben genannten Methode können wir leicht den Effekt erzielen, Bilder auf Webseiten zu löschen. Dies ist natürlich nur eine der Methoden. Tatsächlich gibt es viele Möglichkeiten, Spezialeffekte auf Webseiten zu erzielen. Wir müssen die geeignetste und einfachste Methode wählen, um dies auf der Grundlage der tatsächlichen Bedürfnisse zu erreichen. Gleichzeitig müssen wir darauf achten, den Benutzern beim Hinzufügen von Spezialeffekten zu Webseiten keine unnötigen Probleme oder Störungen zu bereiten. #🎜🎜#

Das obige ist der detaillierte Inhalt vonCSS-Tipps: So erzielen Sie einen Bildlöscheffekt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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 Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage