One place for hosting & domains

      Gestalten von Bildlaufleisten mit CSS


      Einführung

      Im September 2018 definierte W3C CSS Scrollbars Spezifikationen für die Anpassung des Erscheinungsbildes von Bildlaufleisten mit CSS.

      Ab 2020 arbeiten 96 % der Internetbenutzer mit Browsern, die das CSS Scrollbar-Styling unterstützen. Sie müssen jedoch zwei Sätze von CSS-Regeln schreiben, um Blink- und WebKit- sowie auch Firefox-Browser abzudecken.

      In diesem Tutorial lernen Sie, wie Sie CSS verwenden, um Bildlaufleisten zur Unterstützung moderner Browser anzupassen.

      Voraussetzungen

      Um dieser Anleitung folgen zu können, benötigen Sie:

      Gestalten von Bildlaufleisten in Chrome, Edge und Safari

      Derzeit ist die Gestaltung von Bildlaufleisten in Chrome, Edge und Safari mit dem Herstellerpräfix Pseudoelement -webkit scrollbar möglich.

      Hier ist ein Beispiel, das die Pseudoelemente ::-webkit-scrollbar, ::-webkit-scrollbar-track und ::webkit-scrollbar-thumb verwendet:

      body::-webkit-scrollbar {
        width: 12px;               /* width of the entire scrollbar */
      }
      
      body::-webkit-scrollbar-track {
        background: orange;        /* color of the tracking area */
      }
      
      body::-webkit-scrollbar-thumb {
        background-color: blue;    /* color of the scroll thumb */
        border-radius: 20px;       /* roundness of the scroll thumb */
        border: 3px solid orange;  /* creates padding around scroll thumb */
      }
      

      Hier ist ein Screenshot der Bildlaufleiste, die mit diesen CSS-Regeln erstellt wird:

      Screenshot einer Beispiel-Webseite mit einer benutzerdefinierten Bildlaufleiste mit einer blauen Bildlaufleiste auf einem orangefarbenen Balken.

      Dieser Code funktioniert in den neuesten Versionen von Chrome, Edge und Safari.

      Leider wurde diese Spezifikation vom W3C formell aufgegeben und wird wahrscheinlich im Laufe der Zeit nicht mehr verwendet werden.

      Gestalten von Bildlaufleisten in Firefox

      Derzeit ist die Gestaltung von Bildlaufleisten für Firefox mit dem neuen CSS Scrollbars möglich.

      Hier ist ein Beispiel, das die Eigenschaften scrollbar-width und scrollbar-color verwendet:

      body {
        scrollbar-width: thin;          /* "auto" or "thin" */
        scrollbar-color: blue orange;   /* scroll thumb and track */
      }
      

      Hier ist ein Screenshot der Bildlaufleiste, die mit diesen CSS-Regeln erstellt wird:

      Screenshot einer Beispiel-Webseite mit einer benutzerdefinierten Bildlaufleiste mit einer blauen Bildlaufleiste auf einem orangefarbenen Balken.

      Diese Spezifikation hat einige Gemeinsamkeiten mit der Spezifikation -webkit-scrollbar zur Steuerung der Farbe der Bildlaufleiste. Allerdings gibt es derzeit keine Unterstützung zur Änderung der Auffüllung und der Rundung des „Spurbalkens“.

      Erstellen von zukunftssicheren Bildlaufleisten-Stilen

      Sie können Ihr CSS in einer Weise schreiben, um sowohl die Spezifikationen -webkit-scrollbar als auch CSS Scrollbars zu unterstützen.

      Hier ist ein Beispiel, das scrollbar-width, scrollbar-color, ::-webkit-scrollbar, ::-webkit-scrollbar-track, ::webkit-scrollbar-thumb verwendet:

      /* Works on Firefox */
      * {
        scrollbar-width: thin;
        scrollbar-color: blue orange;
      }
      
      /* Works on Chrome, Edge, and Safari */
      *::-webkit-scrollbar {
        width: 12px;
      }
      
      *::-webkit-scrollbar-track {
        background: orange;
      }
      
      *::-webkit-scrollbar-thumb {
        background-color: blue;
        border-radius: 20px;
        border: 3px solid orange;
      }
      

      Blink- und WebKit-Browser ignorieren Regeln, die sie nicht erkennen und wenden -webkit-scrollbar-Regeln an. Firefox-Browser ignorieren Regeln, die sie nicht erkennen und wenden CSS Scrollbars-Regeln an. Sobald Blink- und WebKit-Browser die Spezifikationen -webkit-scrollbar vollständig aufgeben, werden sie auf die neue Spezifikation CSS Scrollbars zurückgreifen.

      Zusammenfassung

      In diesem Artikel haben Sie einen Überblick über die Verwendung von CSS zur Gestaltung von Bildlaufleisten erhalten und wie Sie sicherstellen, dass diese Stile in den meisten modernen Browsern erkannt werden.

      Es ist auch möglich, eine Bildlaufleiste zu simulieren, indem die Standard-Bildlaufleiste ausgeblendet und JavaScript verwendet wird, um Höhe und Bildlaufposition zu erkennen. Diese Ansätze stoßen jedoch an ihre Grenzen, wenn es darum geht, Erfahrungen wie Trägheits-Scrolling (z. B. die abklingende Bewegung beim Scrollen über Trackpads) zu reproduzieren.

      Wenn Sie mehr über CSS erfahren möchten, lesen Sie unsere Themenseite zu CSS für Übungen und Programmierprojekte.



      Source link

      Verwenden von Break-, Continue- und Pass-Anweisungen bei der Arbeit mit Schleifen in Python 3


      Einführung

      Die Verwendung von for-Schleifen und while-Schleifen in Python ermöglicht Ihnen die Automatisierung und Wiederholung von Aufgaben in effizienter Weise.

      Jedoch kann ein externer Faktor die Ausführung Ihres Programms manchmal beeinflussen. Wenn dies der Fall ist, möchten Sie vielleicht, dass Ihr Programm eine Schleife vollständig verlässt, vor dem Fortfahren einen Teil einer Schleife überspringt oder diesen externen Faktor ignoriert. Sie können diese Aktionen mit den Anweisungen break, continue und pass durchführen.

      Break-Anweisung

      In Python bietet Ihnen die break-Anweisung die Möglichkeit, eine Schleife zu verlassen, wenn eine externe Bedingung ausgelöst wird. Sie setzen die break-Anweisung innerhalb des Codeblocks unter Ihrer Schleifenanweisung ein, normalerweise nach einer bedingten if-Anweisung.

      Sehen wir uns ein Beispiel an, das die Anweisung break in einer Schleife for verwendet:

      number = 0
      
      for number in range(10):
          if number == 5:
              break    # break here
      
          print('Number is ' + str(number))
      
      print('Out of loop')
      
      

      In diesem kleinen Programm wird Variable number bei 0 initialisiert. Dann erstellt eine Anweisung for die Schleife so lange, bis die Variable number kleiner als 10 ist.

      Innerhalb der Schleife for gibt es eine Anweisung if, die die Bedingung stellt, dass, wenn die Variable number gleich der Ganzzahl 5 ist, dann die Schleife abbricht.

      Innerhalb der Schleife gibt es auch eine Anweisung print(), die bei jeder Iteration der Schleife for ausgeführt wird, bis die Schleife abbricht, da sie nach der Anweisung break steht.

      Um zu wissen, wann wir aus der Schleife heraus sind, haben wir eine abschließende Anweisung print() außerhalb der Schleife for eingefügt.

      Wenn wir diesen Code ausführen, wird unsere Ausgabe wie folgt aussehen:

      Output

      Number is 0 Number is 1 Number is 2 Number is 3 Number is 4 Out of loop

      Dies zeigt, dass, sobald die Ganzzahl number als gleichwertig zu 5 ausgewertet wird, die Schleife abbricht, da das Programm mit der Anweisung break dazu aufgefordert wird.

      Die Anweisung break veranlasst ein Programm, aus einer Schleife auszubrechen.

      Continue-Anweisung

      Die Anweisung continue gibt Ihnen die Möglichkeit, den Teil einer Schleife zu überspringen, in der eine externe Bedingung ausgelöst wird, aber den Rest der Schleife zu Ende zu führen. Das heißt, die aktuelle Iteration der Schleife wird unterbrochen, aber das Programm kehrt an den Anfang der Schleife zurück.

      Die Anweisung continue befindet sich innerhalb des Codeblocks unter der Schleifenanweisung, normalerweise nach einer bedingten if-Anweisung.

      Unter Verwendung des gleichen Schleifenprogramms for wie im vorstehenden Abschnitt Break-Anweisung, verwenden wir eine Anweisung continue anstelle einer Anweisung break:

      number = 0
      
      for number in range(10):
          if number == 5:
              continue    # continue here
      
          print('Number is ' + str(number))
      
      print('Out of loop')
      
      

      Der Unterschied bei der Verwendung der Anweisung continue anstelle einer Anweisung break besteht darin, dass unser Code trotz der Unterbrechung fortgesetzt wird, wenn die Variable number als äquivalent zu 5 ausgewertet wird. Schauen wir uns unsere Ausgabe an:

      Output

      Number is 0 Number is 1 Number is 2 Number is 3 Number is 4 Number is 6 Number is 7 Number is 8 Number is 9 Out of loop

      Hier tritt Nuber is 5 nie in der Ausgabe auf, aber die Schleife fährt nach diesem Punkt fort, um Zeilen für die Zahlen 6–10 auszugeben, bevor sie die Schleife verlässt.

      Sie können die Anweisung continue verwenden, um tief verschachtelten bedingten Code zu vermeiden oder eine Schleife zu optimieren, indem Sie häufig auftretende Fälle, die Sie verwerfen möchten, eliminieren.

      Die Anweisung continue veranlasst ein Programm, bestimmte Faktoren zu überspringen, die innerhalb einer Schleife auftreten, dann aber den Rest der Schleife zu durchlaufen.

      Pass-Anweisung

      Wenn eine externe Bedingung ausgelöst wird, können Sie mit der Anweisung pass die Bedingung behandeln, ohne dass die Schleife in irgendeiner Weise beeinflusst wird; der gesamte Code wird weiterhin gelesen, bis eine break– oder eine andere Anweisung auftritt.

      Wie bei den anderen Anweisungen, befindet sich die Anweisung pass innerhalb des Codeblocks unter der Schleifenanweisung, normalerweise nach einer bedingten if-Anweisung.

      Unter Verwendung des gleichen Codeblocks wie vorstehend, ersetzen wir die Anweisung break oder continue durch eine Anweisung pass:

      number = 0
      
      for number in range(10):
          if number == 5:
              pass    # pass here
      
          print('Number is ' + str(number))
      
      print('Out of loop')
      
      

      Die Anweisung pass, die nach der bedingten if-Anweisung steht, teilt dem Programm mit, dass es die Schleife weiter ausführen und die Tatsache ignorieren soll, dass die Variable number während einer ihrer Iterationen als gleichwertig zu 5 ausgewertet wird.

      Wir führen das Programm aus und betrachten die Ausgabe:

      Output

      Number is 0 Number is 1 Number is 2 Number is 3 Number is 4 Number is 5 Number is 6 Number is 7 Number is 8 Number is 9 Out of loop

      Durch die Verwendung der Anweisung pass in diesem Programm stellen wir fest, dass das Programm genau so abläuft, wie es ablaufen würde, wenn es keine bedingte Anweisung in dem Programm gäbe. Die Anweisung pass weist das Programm an, diese Bedingung zu ignorieren und das Programm wie gewohnt weiter auszuführen.

      Die Anweisung pass kann minimale Klassen erstellen oder als Platzhalter dienen, wenn Sie an einem neuen Code arbeiten und auf einer algorithmischen Ebene denken, bevor Sie die Details ausarbeiten.

      Zusammenfassung

      Mit den Anweisungen break, continue und pass in Python können Sie for-Schleifen und while-Schleifen effektiver in Ihrem Code verwenden.

      Um mehr mit den Anweisungen break und pass zu arbeiten, können Sie unserem Projekttutorial „Erstellen eines Twitterbots mit Python 3 und der Tweepy-Bibliothek“ folgen.



      Source link

      Verwenden des SMTP-Servers von Google


      Der Autor hat den COVID-19 Relief Fund dazu ausgewählt, eine Spende im Rahmen des Programms Write for DOnations zu erhalten.

      Einführung

      Eine wenig bekannte Funktion von Gmail und Google Apps E-Mail ist der portable SMTP-Server von Google. Anstatt Ihren eigenen Postausgangsserver auf Ihrem DigitalOcean-Droplet oder Kubernetes-Cluster verwalten zu müssen, können Sie die SMTP-Servereinstellungen von Google mit einem beliebigen Skript oder Programm konfigurieren, das Sie zum Versenden von E-Mails verwenden möchten. Sie benötigen lediglich entweder (i) ein kostenloses Gmail-Konto oder (ii) ein kostenpflichtiges G Suite-Konto.

      Vorteile

      Sie haben die Möglichkeit, die von Ihnen über den SMTP-Server gesendeten E-Mails von Google speichern und indizieren zu lassen, sodass alle Ihre gesendeten E-Mails auf den Servern von Google durchsuchbar und gesichert sind. Wenn Sie sich entscheiden, Ihr Gmail- oder G Suite-Konto auch für Ihre eingehenden E-Mails zu verwenden, haben Sie alle Ihre E-Mails an einem praktischen Ort. Da der SMTP-Server von Google nicht den Port 25 verwendet, verringern Sie außerdem die Wahrscheinlichkeit, dass ein ISP Ihre E-Mails blockiert oder als Spam kennzeichnet.

      Einstellungen

      Der SMTP-Server von Google erfordert Authentifizierung. Hier erfahren Sie, wie Sie diese in Ihrem Mail-Client oder Ihrer Anwendung einrichten:

      Anmerkung: Bevor Sie beginnen, sollten Sie laut Google die Sicherheitseinstufung Ihres Mail-Clients oder Ihrer Anwendung überprüfen. Wenn Sie ein Programm verwenden, das von Google als nicht sicher eingestuft wird, wird Ihre Nutzung blockiert, es sei denn, Sie aktivieren weniger sichere Anwendungen (eine Sicherheitseinstellung, die von Google nicht empfohlen wird) oder erstellen ein anwendungsspezifisches App-Passwort. Weitere Sicherheitsinformationen finden Sie unter diesem Link zur Ermittlung der besten Vorgehensweise für Ihren Mail-Client oder Ihre Anwendung.

      1. SMTP-Server (d. h., Postausgangsserver): smtp.gmail.com
      2. SMTP-Benutzername: Ihre vollständige Gmail- oder G Suite-E-Mail-Adresse (z. B. example@gmail.com oder example@your_domain)
      3. SMTP-Passwort: Ihr Gmail- oder G Suite-E-Mail-Passwort
      4. SMTP-Port: 465
      5. SMTP TLS/SSL erforderlich: Ja

      Damit Google Ihre gesendeten E-Mails automatisch in den Ordner „Gesendet“ kopiert, müssen Sie außerdem überprüfen, ob der IMAP-Zugriff für Ihr Konto aktiviert ist.

      Gehen Sie dazu in die Gmail-Einstellungen und klicken Sie auf die Registerkarte Weiterleitung und POP/IMAP. Scrollen Sie nach unten zu dem Abschnitt IMAP-Zugriff und stellen Sie sicher, dass der IMAP-Zugriff für Ihr Konto aktiviert ist.

      Anmerkung: Google schreibt die Absenderzeile jeder E-Mail, die Sie über seinen SMTP-Server senden, automatisch in die mit dem Konto verknüpfte Standard-E-Mail-Adresse um, wenn die verwendete Adresse nicht in der Adressenliste E-Mail senden als in den Einstellungen von Gmail oder G Suite enthalten ist. Sie können die Liste überprüfen, indem Sie auf dem Einstellungsbildschirm auf die Registerkarte Konten und Import gehen.

      Sie müssen sich dieser Nuance bewusst sein, da sie sich auf die Darstellung Ihrer E-Mail aus der Sicht des Empfängers auswirkt und auch die Einstellung Antworten an einiger Programme beeinflussen kann.

      Sendebeschränkungen

      Google begrenzt die Menge der E-Mails, die ein Benutzer über den portablen SMTP-Server senden kann. Diese Begrenzung beschränkt die Anzahl der täglich gesendeten Nachrichten auf 99 E-Mails; die Beschränkung wird automatisch 24 Stunden nach Erreichen der Beschränkung aufgehoben.

      Zusammenfassung

      Sie haben nun die Möglichkeit, den SMTP-Server von Google zu verwenden. Wenn diese vereinfachte Option nicht ausreicht, können Sie die Installation und Konfiguration von Postfix als reinen Sende-SMTP-Server in Betracht ziehen.



      Source link