Główna » Kodowanie » Sass Tutorial Budowanie vCard online za pomocą Sass & Compass

    Sass Tutorial Budowanie vCard online za pomocą Sass & Compass

    Dzisiaj będziemy kontynuować naszą dyskusję na temat Sassa i będzie to ostatnia część naszej serii Sass. Tym razem, zamiast podejścia teoretycznego, będzie to trochę bardziej praktyczne. Stworzymy vCard online za pomocą Sass wraz z Compass.

    Chodzi o to, że vCard powinien być łatwo regulowany, pod względem koloru i rozmiaru. W tym procesie będziemy korzystać z kilku funkcji Sass i Compass, takich jak Zmienne, miksy, operacje, dziedziczenie selektorów, zagnieżdżone reguły i Pomocnicy kompasu. Jeśli przegapiłeś nasze poprzednie posty z tej serii, zalecamy, aby najpierw je obejrzeć.

    Planowanie i wireframing

    Podczas pracy z Sass i Compass, planowanie jest niezbędne. Zazwyczaj musimy mieć duży obraz tego, jak będzie wyglądał nasz końcowy wynik (np. Strona lub strona internetowa). Pomocne będzie przeglądanie pomysłów w takich witrynach jak Behance lub Dribbble. Następnie możemy opracować pomysły na papierze lub skonstruować je w modelu szkieletowym, jak w poniższym przykładzie.

    Jak widać na powyższym obrazku, nasza vCard zawiera informacje kontaktowe o „John” - profil obrazu, niektóre informacje o Johnie, takie jak jego imię i nazwisko, adres e-mail, numer telefonu i krótki opis tego, kim jest lub co robi. To będzie nasza sekcja „bio”.

    Poniżej znajdują się jego tożsamości społeczne w postaci przycisków społecznościowych. To będzie nasza sekcja „społeczna”.

    Przygotowywanie aktywów

    Zanim zaczniemy kodowanie, oto kilka zasadniczych rzeczy, które należy przygotować. Rozumiem, że do tej pory powinieneś mieć zainstalowany Sass i Compass w swoim komputerze.

    (Jeśli nie jesteś pewien, czy je zainstalowałeś, możesz uruchomić to polecenie sass -v lub kompas -v przez Wiersz polecenia lub Terminal lub zawsze możesz używać aplikacji, takich jak Scout App, jeśli wolisz pracować z GUI.)

    Potrzebujemy również kilku zasobów, takich jak ikony czcionek i ikony mediów społecznościowych, które można uzyskać z takich miejsc jak ModernPictograms.

    Wreszcie, ponieważ używamy wiersza poleceń / Terminal dla tego samouczka, musimy przejść do naszego katalogu i uruchomić projekt Compass z tymi dwoma poleceniami: kompas init i zegarek kompasowy.

    HTML Markup

    Poniżej znajduje się znacznik HTML naszej wizytówki vCard, jest to dość proste. Wszystkie sekcje są opakowane w logiczny tag HTML5

    .

     
    • Thoriq Firdaus
    • [email protected]
    • (+62) 1.2345.678,9
    • Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse dolor neque, eleifend at pellentesque quis, convallis sit amet tellus. Etiam et auctor arcu.

    Jak widać powyżej, tożsamości społeczne zawarte w „społecznym”sekcja jest zorganizowana w elementy listy, dzięki czemu możemy łatwo wyświetlać je obok siebie. Każda z nich otrzymuje nazwę klasy zgodnie z tą konwencją społeczny facebook, Twitter społecznościowy, społeczno-google i tak dalej.

    Konfiguracja kompasu

    Musimy nieco skonfigurować Compass, odkomentując kilka wierszy config.rb plik w następujący sposób:

     # Możesz tutaj wybrać preferowany styl wyjściowy (można go zastąpić za pomocą wiersza poleceń): output_style =: expanded # Aby włączyć względne ścieżki do zasobów za pomocą funkcji pomocnika kompasu. Uncomment: relative_assets = true # Aby wyłączyć debugowanie komentarzy wyświetlających oryginalną lokalizację selektorów. Uncomment: line_comments = false 

    Jeśli nie możesz znaleźć config.rb plik, prawdopodobnie nie uruchomiłeś tego polecenia kompas init w katalogu projektu.

    Importowanie plików

    Ponieważ będziemy używać Compassa, musimy go zaimportować za pomocą;

     @import „kompas”; 

    Osobiście preferuję zresetowanie domyślnych stylów z przeglądarek, tak aby dane wyjściowe były bardziej spójne. Kompas, w tym przypadku, ma moduł Reset. Ten moduł jest oparty na resecie CSS Erica Meyera i można go importować za pomocą;

     @import „kompas / reset”; 

    Wolę jednak korzystać z Normalize na szczęście jest również w formacie Sass / Scss. Pobierz plik tutaj, zapisz go sass katalog roboczy i zaimportuj go do naszego arkusza stylów.

     @import „normalizuj”; 

    Rekomendowane lektury: Przeglądanie poziomu priorytetu stylu CSS

    Zmienne

    Z pewnością będziemy mieć kilka stałych wartości w arkuszu stylów, dlatego będziemy przechowywać je w zmiennych, a te dwie zmienne poniżej zdefiniują podstawowy kolor naszej wizytówki vCard.

     $ base: #fff; $ dark: darken ($ base, 10%); 

    Podczas, gdy $ szerokość zmienna poniżej będzie szerokością naszej strony; będzie również podstawą do zdefiniowania innych rozmiarów elementów.

     $ szerokość: 500px; $ space: $ width / 25; // = 20px 

    I $ space zmienna, jak widzisz, będzie domyślnym odstępem lub rozmiarem kolumny w naszej vCard, która w tym przykładzie byłaby 20px;

    Compass ma także pomocników do wykrywania rozmiaru obrazu, a my skorzystamy z tej funkcji na naszym profilu obrazu w następujący sposób;

     $ img: image-width ("me.jpg") + (($ spacja / 4) * 2); 

    Statysta Dodanie z (($ space / 4) * 2) w powyższym kodzie jest obliczenie całkowitej szerokości obrazu, w tym obramowania, które będzie ramkować obraz. Rama ogólnie ma dwie strony; góra i dół / lewo i prawo, dlatego mnożymy wynik podziału przez 2.

    Dziedziczenie selektora

    W naszym arkuszu stylów widocznie jest kilka selektorów, które będą miały te same zasady stylizacji. Aby uniknąć powtórzeń w naszym kodzie, musimy najpierw określić te style i odziedziczyć je za pomocą @poszerzać w razie potrzeby. Ta metoda w Sassie jest znana jako Dziedziczenie selektora, bardzo przydatna funkcja, której brakuje w LESS.

     .float-left float: left;  .box-sizing @include box-sizing (border-box);  

    Style

    Kiedy wszystko, co jest konieczne, zostało skonfigurowane, nadszedł czas na stylowanie naszej wizytówki vCard, począwszy od koloru tła do naszego dokumentu HTML;

     html wysokość: 100%; background-color: $ base;  

    vCard

    Następujące style definiują opakowanie vCard. Jeśli wcześniej pracowałeś z LESS, ten kod będzie Ci znany i łatwy do strawienia.

     .vcard width: $ width; margin: 50px auto; background-color: darken ($ base, 5%); border: 1px solid $ dark; @include border-radius (3px); ul padding: 0; margines: 0; li list-style: none;  

    Szerokość opakowania dziedziczy wartość z $ szerokość zmienna. Kolor tła jest ciemniejszy o 5% od koloru podstawowego, podczas gdy kolor obramowania będzie ciemniejszy o 10%. Ta kolorystyka jest uzyskiwana za pomocą funkcji kolorów Sass.

    VCard również będzie miała 3px promień zaokrąglonych rogów uzyskiwany przy użyciu Compass CSS3 Mixins; border-radius (3px).

    Sekcja Bio

    Jak zauważyliśmy na początku tego samouczka, vCard można podzielić na dwie sekcje. Poniższe zagnieżdżone style zdefiniują pierwszą sekcję zawierającą profil obrazu z kilkoma szczegółami (nazwa, adres e-mail i telefon).

     .bio border-bottom: 1px solid $ dark; padding: $ space; @extend .box-sizing; img @extend .float-left; Blok wyświetlacza; border: ($ space / 4) stałe #ffffff;  .detail @extend .float-left; @extend .box-sizing; kolor: ciemniejszy ($ baza, 50%); margin: left: $ space; dół: $ space / 2;  width: $ width - (($ spacja * 3) + $ img); li &: before width: $ space; wysokość: $ spacja; margin-right: $ space; font-family: „ModernPictogramsNormal”;  & .name: before content: "f";  & .email: before content: "m";  & .phone: before content: "N";  

    Jest jedna rzecz z powyższego kodu, którą uważamy za konieczną do wzięcia pod uwagę. Szerokość w .Szczegół selektor jest określony za pomocą tego równania $ width - (($ spacja * 3) + $ img);.

    To równanie służy do dynamicznego obliczania szczegółów szerokość odejmując szerokość profilu obrazu i przestrzenie (wypełnienie i margines) od całkowitej szerokości vCard.

    Sekcja Społeczna

    Poniższe style dotyczą drugiej sekcji vCard. W rzeczywistości nie ma tu różnicy w stosunku do zwykłego CSS, tylko teraz są one zagnieżdżone, a kilka wartości jest definiowanych za pomocą zmiennych.

     .social kolor tła: $ ciemny; szerokość: 100%; padding: $ space; @extend .box-sizing; ul text-align: center; li display: inline-block; szerokość: 32px; wysokość: 32px; a dekoracja tekstowa: brak; wyświetlacz: blok śródliniowy; szerokość: 100%; wysokość: 100%; wcięcie tekstu: 100%; white-space: nowrap; przepełnienie: ukryte;  

    W tej sekcji wyświetlimy ikony mediów społecznościowych za pomocą techniki obrazków, a Compass ma funkcję umożliwiającą szybszą pracę.

    Przede wszystkim musimy umieścić nasze ikony w specjalnym folderze - nazwijmy folder /społeczny/, na przykład. Wracając do arkusza stylów, połącz te ikony z następującymi @import reguła.

     @import "social / *. png"; 

    The społeczny/ powyżej odnoszą się do folderu, w którym przechowujemy ikony. Ten folder powinien być zagnieżdżony w folderze obrazu. Teraz, jeśli spojrzymy na nasz folder obrazów, powinniśmy zobaczyć obraz sprite wygenerowany losowymi postaciami, takimi jak social-sc805f18607.png. W tym momencie nic nie dzieje się na froncie, dopóki nie zastosujemy stylów w następującej linii.

     @zawiesz wszystkie duchy społeczne; 

    Ostateczny wynik

    Wreszcie, po całej ciężkiej pracy, możemy teraz zobaczyć taki wynik:

    W przypadku, gdy tak myślimy 500px jest zbyt szeroki później, musimy tylko zmienić wartość w $ szerokość zmienna - na przykład, 350px - reszta będzie “magicznie” być regulowanym. Możesz także eksperymentować ze zmienną koloru.

    • Wyświetl demo
    • Pobierz źródło

    Wniosek

    W tym samouczku pokazaliśmy, jak zbudować prostą wizytówkę online w Sass i Compass; jest to jednak tylko przykład. Sass i Compass są rzeczywiście potężne, ale czasami nie jest to konieczne. Na przykład, kiedy pracujemy na stronie internetowej z kilkoma stronami i prawdopodobnie również będziemy potrzebować tylko mniejszej liczby linii stylów, użycie Sass i Compass jest uważane za nadmierne.

    Ten post zamyka naszą serię Sass i mamy nadzieję, że Ci się podobało. Jeśli masz jakiekolwiek pytania dotyczące tego tematu, nie wahaj się dodać go w polu komentarza poniżej.