Wir führen das Konzept von @media-Queries in CSS ein.
Vieles, was die Verwendung von Sass in diesem Projekt ermöglicht, ist das DRY-Prinzip (Don't Repeat Yourself – Wiederhole dich nicht). Das haben wir bei der Festlegung von Farb- und Größenvariablen gemacht. Das haben wir mit unseren Schriftartenstapeln gemacht. Jetzt machen wir es wieder mit Media Queries. Jedes Mal, wenn wir eine Media Query benötigen, haben wir jetzt ein @mixin, das wir verwenden können. So können wir sie an einer einzigen Stelle ändern, wenn nötig.
Anstatt unseren Media Queries Namen wie „iPad“ oder etwas Übermäßig Spezifisches zu geben, verwenden wir einfach willkürliche, aber verständliche Namen wie „Baby Bear“ und „Papa Bear“.
Wir beginnen mit einem breiten Bildschirm und verkleinern ihn dann, bis die Navigation schlecht aussieht, und das ist unser erster Media-Query-Break. An diesem Punkt teilen wir die Navigation in zwei Reihen zu je vier Elementen statt einer Reihe zu acht. Wir müssen die Schatten anpassen, damit es richtig aussieht.
Wir passen auch die Breite des Seitenwraps bei bestimmten Media Queries an, was bedeutet, dass wir auch die Funktionsweise des Logos anpassen müssen.
Chris,
Als ich zum ersten Mal hörte, dass du diese Benennungskonvention für Breakpoints erwähnst, dachte ich: „Brillant!“, aber nachdem ich diese Technik verwendet hatte, dachte ich: „Was ist dazwischen?“
winzig-bär? echt-winzig-bär? cousin-bär? opa-bär? Was, wenn du mehr als 3 Breakpoints in deinem Design hast?
Sicher, das klingt gut. Was auch immer für dich funktioniert (was du dir merken kannst). Vielleicht Alpha, Beta, Gamma usw. Oder willkürliche Nummerierung ähnlich dem, was du vielleicht für die Verwaltung von z-index einrichten würdest. 100, 200, 300 usw. – was nett sein könnte, da immer Raum dazwischen ist.
Wie verhinderst du, dass die Font-Icons über den Navigationswörtern hüpfen? Wenn ich meine Seite zu schrumpfen beginne, um Breakpoints zu finden, springen die Icons über die Wörter, wenn ich meine Breakpoints erreiche.
Chris, exzellente Nutzung von Media Queries, wieder etwas Neues gelernt heute, allerdings habe ich bei der Implementierung dieses Stils in einem meiner Projekte festgestellt, dass er wiederholte Instanzen der Media Query im endgültigen CSS-Stylesheet erzeugt.
Also, im CSS-Dokument, anstatt auszugeben…
@media(max-width:1000px)
„alle Eigenschaften für diese Breite“
…gibt es aus…
„Eigenschaft“
@media(max-width:1000px)…
„eine weitere Eigenschaft“
@media(max-width:1000px)…
Obwohl du dich also bei der Entwicklung nicht wiederholst, tust du es in der verarbeiteten Datei. Findest du, dass dies ein kleiner Preis für erhöhte Effizienz ist?
Das tue ich tatsächlich. Zum einen frisst Gzip diesen repetitiven Kram zum Frühstück. Außerdem sind sich die Sass-Leute dessen bewusst und erwägen derzeit einige Möglichkeiten, dies zu verbessern.
Egal, sobald ich die Media Query angewendet habe, um sie abzufangen, hörten sie auf zu springen.
Betreff: SASS/Codekit – wie erfahre ich, ob ich die neueste Version von SASS verwende? Ich weiß, dass 3.2 im August durchging, aber gibt es eine Möglichkeit, das innerhalb von Codekit zu überprüfen und zu bestätigen?
Ach, egal –> http://d.pr/i/KxBJ
ja warte… auf main-nav hast du jetzt so etwas wie das hier
Ich verstehe, wie das funktioniert, aber ich habe das noch nie gesehen, wie funktioniert das in Bezug auf Unterstützung und so etwas…
Das ist nur Mathematik in Sass.
Diese genaue Zeile wird kompiliert zu
Das 0.1 ist eine provisorische Lösung, da die Subpixel-Rundung manchmal ungenau ist und das nächste Navigations-Element auf die nächste Zeile verschiebt.
Ich denke, die Art und Weise, wie es in Sass geschrieben ist, drückt diese Idee klarer aus. Beginnen mit 100%, es gibt 8 Menüpunkte, also teile durch diese Zahl, dann mache die provisorische Lösung. Anstatt nur den berechneten Wert dort zu haben…
Noch eine tolle Sache. Allerdings ist das Video etwas unscharf. Liegt das nur an mir oder ist das ein Vimeo-Upload-/Kompressionsproblem?
Gibt es eine Chance, eine Funktion zum Kopieren in die Zwischenablage für eure Codeblöcke zu implementieren. Ich weiß, das ist pingelig, aber sehr nützlich. Ich bin sicher, ihr habt das in Erwägung gezogen und habt gute Gründe, es nicht zu implementieren, ich dachte nur, ich würde diese Funktion anfordern. Frieden.
Ich hatte diese Funktion früher, aber um ehrlich zu sein, ist es ein bisschen ein hacky Durcheinander (ZeroClipboard, etc.). Außerdem belastet es die Seite (theoretisch könnte es bei Bedarf geladen werden, aber wie kompliziert wollen wir es hier machen? =)).
Die wahre Wahrheit ist, dass ich, als ich diese Funktion hatte und auf meine eigene Website verwies (was ich oft tue), sie nicht einmal benutzte. Ich zog es vor, normal zu auswählen und zu kopieren. In diesem Sinne habe ich sichergestellt, dass der Code auf der Website leicht zu kopieren und einzufügen war (keine Zeilennummern oder anderer seltsamer Kram kamen mit).
Oh, das gefällt mir wirklich gut! Es war schön zu sehen, dass du auch ärgerliche dumme Probleme hast, wenn du nach dieser grauen Schriftfarbe suchst… Kann ich vorschlagen, dass wir eine Art Anzeige dafür haben, welche Videos man bereits angesehen hat? Und ist es möglich, einen Link „Alle Filme herunterladen“ zu haben? Danke für das Tun! Habe schon viel gelernt.
Großartig! Diese Benennungskonvention für Media Queries fühlt sich großartig an.
Dumme Frage, sicher, aber ich stecke mit einem „Syntaxfehler: Ungültiges CSS nach „…int(mama-bear) “: erwartet „}“, war „{“ in Zeile 74 von . Vielleicht kann mir jemand helfen. SASS 3.2.1 ist installiert. Ich bin neu, seid nachsichtig bitte.
Umschließe deinen Breakpoint mit einem Selektor
Hallo Chris,
Es gibt eine Lücke zwischen Video 15 und 16. Du zeigst nicht, wie man z.B. die :hover-Zustände anwendet. Das macht es schwer, den neuen Dingen zu folgen, wenn ich Dinge selbst herausfinden muss, besonders für einen Neuling wie mich.
Pausiere das Video bei 6:15. Schau dir den Code in den Zeilen 95 bis 98 an. Dort ist der Hover.
Wenn du eine Transition möchtest, mache darunter
Ein paar Kommentare
1) Ich liebe, wie hier der CONTENT (in diesem Fall die Navigation) zur Bestimmung von Breakpoints verwendet wird, im Gegensatz zu iPhone/iPad/etc.
2) Die Verwendung von SASS-Mixins, um Eigenschaften bei Breakpoints auf diese Weise festzulegen, ist absolut sinnvoll. IMHO hätte es schon immer so sein sollen.
3) Stand Oktober 2012 verwendet Codekit SASS 3.2.1, also sollten die Leute gut damit zurechtkommen.
Für Windows-Nutzer: Verwendet ScoutApp. Es verwendet derzeit kein SASS 3.2, daher werdet ihr eine ganze Menge Fehler bekommen.
Zur Behebung
1) https://github.com/mhs/scout-app/downloads – holt euch die neueste Version, diese ist zum Zeitpunkt des Schreibens im Alpha-Stadium, also seid euch dessen bewusst.
2) Wenn ihr auch auf Windows 7 seid und einen Fehler beim Ausführen erhaltet, könnte dieser Thread helfen – https://github.com/mhs/scout-app/issues/19
Ich glaube, ScoutApp verwendet jetzt auch 3.2.
Brillant! Ich hatte keine Ahnung, dass man @content aus einem Mixin heraus referenzieren kann. Ich suche schon seit einiger Zeit nach einer Möglichkeit, ähnliche Dinge zu tun. z.B.
Welches Werkzeug verwendest du, um die Pixel in deinem Screencast zu messen? Aus den Videos scheint es, als würdest du einfach in irgendeinem Programm klicken und ziehen und du bekommst die Entfernung in Pixel.