Heim Web-Frontend js-Tutorial Implementieren Sie eine coole adaptive Hintergrundvideo-Anmeldeseite basierend auf Vue.js 2.0

Implementieren Sie eine coole adaptive Hintergrundvideo-Anmeldeseite basierend auf Vue.js 2.0

Jan 18, 2018 am 09:03 AM
javascript vue.js 背景

In diesem Artikel wird beschrieben, wie Sie eine Anmeldeseite mit einem coolen Hintergrundvideo implementieren und sowohl das Hintergrundvideo als auch die Vordergrund-Anmeldekomponente perfekt anpassen können. Das Hintergrundvideo kann das Fenster immer ausfüllen , und die Vordergrundkomponente ist immer zentriert. Der Inhalt des Videos bleibt immer maximal erhalten und es kann der beste visuelle Effekt erzielt werden. Und basierend auf dem Familien-Bucket Vue.js 2.0. Der konkrete Effekt ist im Bild unten dargestellt:

Sie können am Ende des Artikels weiterblättern, um den endgültigen Effekt zu sehen.

1. Bestehende Implementierungsmethode der Hintergrundvideo-Webseite

Im Ausland gibt es eine gute Website „Coverr“, die vollständige Tutorials und Videoressourcen zur Verfügung stellt -End-Entwickler erstellen coole Hintergrundvideo-Homepages. Das Beispiel für den Website-Effekt ist wie folgt:

Das Tutorial lautet wie folgt:

Aus dem Bild und meiner Praxis lassen sich folgende Punkte ableiten:

  • Dieses Tutorial verwendet jQuery. Da wir Vue.js nutzen wollen, kann jQuery komplett ersetzt werden.

  • Die CSS- und JavaScript-Codes in diesem Tutorial sind zu redundant.

  • Führen Sie das Beispiel direkt aus und stellen Sie fest, dass der Effekt nicht gut ist. Wenn das Browserfenster nach Belieben gestreckt wird, kann sich das Hintergrundvideo nicht perfekt anpassen. „Es treten schwarze Ränder und andere Fehler auf.“ und der Effekt ist nicht wie erwartet.

2. Entwerfen Sie eine perfekte Hintergrundvideo-Webseite

Erstellen Sie zunächst ein Projekt mit Vue-Loader basierend auf dem Gerüst-Tool vue-cli. Erstellen Sie im entsprechenden Verzeichnis eine „.vue“-Datei als Vorlagendatei für die Anmeldeseite. Die spezifischen Details werden nicht wiederholt. Der Inhalt dieses Abschnitts ist auf die .vue-Datei beschränkt.

2.1 HTML-Vorlage

Basierend auf den Anforderungen wurde die von Coverr bereitgestellte HTML-Vorlage leicht geändert. Die Ergebnisse sind wie folgt:

<template>
 <p class="homepage-hero-module">
 <p class="video-container">
 <p :style="fixStyle" class="filter"></p>
 <video :style="fixStyle" autoplay loop class="fillWidth" v-on:canplay="canplay">
 <source src="PATH_TO_MP4" type="video/mp4"/>
 浏览器不支持 video 标签,建议升级浏览器。
 <source src="PATH_TO_WEBM" type="video/webm"/>
 浏览器不支持 video 标签,建议升级浏览器。
 </video>
 <p class="poster hidden" v-if="!vedioCanPlay">
 <img :style="fixStyle" src="PATH_TO_JPEG" alt="">
 </p>
 </p>
 </p>
</template>
Nach dem Login kopieren

In der Vorlage: Das p-Tag der Filterklasse ist eine Maskenebene für das Hintergrundvideo, über die die Helligkeit und Farbtemperatur des Videos gesteuert werden kann. Das

Video-Tag ist ein Standard-HTML5-Tag, das zwei Videoformate und einen Bildplatzhalter bereitstellt. Das Hintergrundvideo wird nach dem Laden automatisch abgespielt.

Die von Coverr bereitgestellte Originalvorlage kann nur Bilder anzeigen, aber keine Videos abspielen. Dieses Problem wird durch die Verwendung der v-if-Direktive von Vue.js gelöst.

2.2 CSS

Der ursprüngliche CSS-Code der Vorlage wurde stark optimiert. Der geänderte CSS-Code lautet wie folgt:

<style scoped>
 .homepage-hero-module,
 .video-container {
 position: relative;
 height: 100vh;
 overflow: hidden;
 }
 .video-container .poster img,
 .video-container video {
 z-index: 0;
 position: absolute;
 }
 .video-container .filter {
 z-index: 1;
 position: absolute;
 background: rgba(0, 0, 0, 0.4);
 }
</style>
Nach dem Login kopieren

Da die meisten Stile global für das Projekt gelten , daher sind dieser Vorlage nur noch drei Stile gewidmet. Die kurze Beschreibung lautet wie folgt:

  • Container p füllt das Browserfenster

  • Über dem Video befindet sich die Maske p, die als Maske fungiert.

2.3 JavaScript-Code

<script>
 export default {
 name: 'login',
 data() {
 return {
 vedioCanPlay: false,
 fixStyle: ''
 }
 },
 methods: {
 canplay() {
 this.vedioCanPlay = true
 }
 },
 mounted: function() {
 window.onresize = () => {
 const windowWidth = document.body.clientWidth
 const windowHeight = document.body.clientHeight
 const windowAspectRatio = windowHeight / windowWidth
 let videoWidth
 let videoHeight
 if (windowAspectRatio < 0.5625) {
  videoWidth = windowWidth
  videoHeight = videoWidth * 0.5625
  this.fixStyle = {
  height: windowWidth * 0.5625 + &#39;px&#39;,
  width: windowWidth + &#39;px&#39;,
  &#39;margin-bottom&#39;: (windowHeight - videoHeight) / 2 + &#39;px&#39;,
  &#39;margin-left&#39;: &#39;initial&#39;
  }
 } else {
  videoHeight = windowHeight
  videoWidth = videoHeight / 0.5625
  this.fixStyle = {
  height: windowHeight + &#39;px&#39;,
  width: windowHeight / 0.5625 + &#39;px&#39;,
  &#39;margin-left&#39;: (windowWidth - videoWidth) / 2 + &#39;px&#39;,
  &#39;margin-bottom&#39;: &#39;initial&#39;
  }
 }
 }
 window.onresize()
 }
 }
</script>
Nach dem Login kopieren

Der wichtigste Teil des obigen Codes ist die Überwachung des Onresize-Ereignisses des Fensterobjekts. Wenn sich die Fenstergröße ändert, ändert das Programm gleichzeitig die Größe des Videos und des Maskendoms, sodass die schmalste Seite des Videos immer das Browserfenster ausfüllt, während die langen Seiten links und rechts gleichmäßig abgeschnitten werden.

Dadurch wird das Video nicht gestreckt. Die Mitte des Videos bleibt immer in der Mitte des Browsers Das maximale Ausmaß und die besten visuellen Effekte können erzielt werden.

Der endgültige Effekt ist wie folgt:

Verwandte Empfehlungen:

Das WeChat-Applet implementiert das adaptive Breitenverhältnis von Bildkomponenten. Beispiel Teilen

Detailliertes Beispiel für die adaptive Verarbeitung von Javascript, um eine Bilddehnung zu verhindern

So erreichen Sie eine Anpassung der Bildgröße

Das obige ist der detaillierte Inhalt vonImplementieren Sie eine coole adaptive Hintergrundvideo-Anmeldeseite basierend auf Vue.js 2.0. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So implementieren Sie ein Online-Spracherkennungssystem mit WebSocket und JavaScript So implementieren Sie ein Online-Spracherkennungssystem mit WebSocket und JavaScript Dec 17, 2023 pm 02:54 PM

So implementieren Sie mit WebSocket und JavaScript ein Online-Spracherkennungssystem. Einführung: Mit der kontinuierlichen Weiterentwicklung der Technologie ist die Spracherkennungstechnologie zu einem wichtigen Bestandteil des Bereichs der künstlichen Intelligenz geworden. Das auf WebSocket und JavaScript basierende Online-Spracherkennungssystem zeichnet sich durch geringe Latenz, Echtzeit und plattformübergreifende Eigenschaften aus und hat sich zu einer weit verbreiteten Lösung entwickelt. In diesem Artikel wird erläutert, wie Sie mit WebSocket und JavaScript ein Online-Spracherkennungssystem implementieren.

WebSocket und JavaScript: Schlüsseltechnologien zur Implementierung von Echtzeitüberwachungssystemen WebSocket und JavaScript: Schlüsseltechnologien zur Implementierung von Echtzeitüberwachungssystemen Dec 17, 2023 pm 05:30 PM

WebSocket und JavaScript: Schlüsseltechnologien zur Realisierung von Echtzeit-Überwachungssystemen Einführung: Mit der rasanten Entwicklung der Internet-Technologie wurden Echtzeit-Überwachungssysteme in verschiedenen Bereichen weit verbreitet eingesetzt. Eine der Schlüsseltechnologien zur Erzielung einer Echtzeitüberwachung ist die Kombination von WebSocket und JavaScript. In diesem Artikel wird die Anwendung von WebSocket und JavaScript in Echtzeitüberwachungssystemen vorgestellt, Codebeispiele gegeben und deren Implementierungsprinzipien ausführlich erläutert. 1. WebSocket-Technologie

So implementieren Sie ein Online-Reservierungssystem mit WebSocket und JavaScript So implementieren Sie ein Online-Reservierungssystem mit WebSocket und JavaScript Dec 17, 2023 am 09:39 AM

So implementieren Sie ein Online-Reservierungssystem mit WebSocket und JavaScript. Im heutigen digitalen Zeitalter müssen immer mehr Unternehmen und Dienste Online-Reservierungsfunktionen bereitstellen. Es ist von entscheidender Bedeutung, ein effizientes Online-Reservierungssystem in Echtzeit zu implementieren. In diesem Artikel wird erläutert, wie Sie mit WebSocket und JavaScript ein Online-Reservierungssystem implementieren, und es werden spezifische Codebeispiele bereitgestellt. 1. Was ist WebSocket? WebSocket ist eine Vollduplex-Methode für eine einzelne TCP-Verbindung.

Verwendung von JavaScript und WebSocket zur Implementierung eines Echtzeit-Online-Bestellsystems Verwendung von JavaScript und WebSocket zur Implementierung eines Echtzeit-Online-Bestellsystems Dec 17, 2023 pm 12:09 PM

Einführung in die Verwendung von JavaScript und WebSocket zur Implementierung eines Online-Bestellsystems in Echtzeit: Mit der Popularität des Internets und dem Fortschritt der Technologie haben immer mehr Restaurants damit begonnen, Online-Bestelldienste anzubieten. Um ein Echtzeit-Online-Bestellsystem zu implementieren, können wir JavaScript und WebSocket-Technologie verwenden. WebSocket ist ein Vollduplex-Kommunikationsprotokoll, das auf dem TCP-Protokoll basiert und eine bidirektionale Kommunikation zwischen Client und Server in Echtzeit realisieren kann. Im Echtzeit-Online-Bestellsystem, wenn der Benutzer Gerichte auswählt und eine Bestellung aufgibt

So ersetzen Sie alle PPT-Hintergründe So ersetzen Sie alle PPT-Hintergründe Mar 25, 2024 pm 04:25 PM

Das Ersetzen des PPT-Hintergrunds ist ein wichtiger Vorgang, der den visuellen Stil der Präsentation schnell vereinheitlichen kann. Sie können den Hintergrund Ihrer gesamten Präsentation schnell ersetzen, indem Sie den Folienmaster ändern oder die Funktion „Hintergrund formatieren“ verwenden. Darüber hinaus bieten einige PPT-Versionen auch eine Batch-Ersetzungsfunktion, mit der der Hintergrund aller Folien problemlos ersetzt werden kann. Beim Austausch des Hintergrunds sollten Sie darauf achten, einen Hintergrund zu wählen, der zum Thema der Präsentation passt, und darauf achten, dass die Klarheit und Auflösung des Hintergrunds den Anforderungen entspricht.

So ändern Sie die Hintergrundfarbe von Fotos auf Meitu Xiuxiu So ändern Sie die Hintergrundfarbe von Fotos auf Meitu Xiuxiu Apr 08, 2024 pm 03:56 PM

1. Öffnen Sie die Meitu Xiu Xiu-Software, wählen Sie [Bildverschönerung] und importieren Sie Fotos aus dem Album. 2. Klicken Sie in der unteren Symbolleiste auf [Schneiden] und wählen Sie die Funktion [Hintergrundersetzung]. 3. Wählen Sie in der Option [Hintergrund] die gewünschte Hintergrundfarbe aus dem Vollfarbfeld aus oder laden Sie ein benutzerdefiniertes Bild hoch. 4. Nachdem Sie die Auswahl bestätigt haben, klicken Sie auf [Speichern], um die Änderung der Hintergrundfarbe abzuschließen.

JavaScript und WebSocket: Aufbau eines effizienten Echtzeit-Wettervorhersagesystems JavaScript und WebSocket: Aufbau eines effizienten Echtzeit-Wettervorhersagesystems Dec 17, 2023 pm 05:13 PM

JavaScript und WebSocket: Aufbau eines effizienten Echtzeit-Wettervorhersagesystems Einführung: Heutzutage ist die Genauigkeit von Wettervorhersagen für das tägliche Leben und die Entscheidungsfindung von großer Bedeutung. Mit der Weiterentwicklung der Technologie können wir genauere und zuverlässigere Wettervorhersagen liefern, indem wir Wetterdaten in Echtzeit erhalten. In diesem Artikel erfahren Sie, wie Sie mit JavaScript und WebSocket-Technologie ein effizientes Echtzeit-Wettervorhersagesystem aufbauen. In diesem Artikel wird der Implementierungsprozess anhand spezifischer Codebeispiele demonstriert. Wir

Der Geburtshintergrund und die ursprüngliche Absicht der Go-Sprache Der Geburtshintergrund und die ursprüngliche Absicht der Go-Sprache Apr 04, 2024 am 08:48 AM

Die Go-Sprache wurde bei Google geboren, um die Probleme der Komplexität und unzureichenden Parallelitätsunterstützung von C++ zu lösen. Die ursprüngliche Absicht besteht darin, eine einfache, leicht zu erlernende, effiziente Parallelität, speichersichere und plattformübergreifende Sprache zu schaffen, um die Produktivität von Programmierern zu verbessern, zuverlässige und skalierbare Systeme aufzubauen und die Portierung und gemeinsame Nutzung von Code zu fördern.

See all articles