SlideShare uma empresa Scribd logo
1 de 14
Baixar para ler offline
Advanced CSS and Sass:
Flexbox, Grid, Animations
and More!
Στούμπος Βασίλης
CSS, SASS, Tι είναι και πού διαφέρουν
Η λέξη CSS προέρχεται
από τα αρχικά
Cascading Style Sheets.
Η CSS μας περιγράφει
το τρόπο με τον οποίο
τα HTML στοιχεία
απεικονίζονται στην
οθόνη (π.χ. χρώμα,
μέγεθος,
γραμματοσειρά κ.α.)
Η Sass είναι μία γλώσσα
υπολογιστή που πατάει
πάνω στην CSS και
χρησιμοποιείται με τον
ίδιο τρόπο. Έχει
καλύτερη δομή και
περισσότερη δυναμη
από την απλη CSS.
Νesting
Μεταβλητές
Mixins
Οι σπουδαιότερες
διαφορές τους είναι 3
CSS SASS Διαφορές
HTML CSS SASS
3 Βασικές Αρχές για σωστή χρήση της
HTML & CSS
2) Maintanable Κώδικας
3) Web Performance
Να μπορεί κάποιος να κάνει εύκολα αλλαγές στον κώδικα ωστε να συντηρεί το site στο επιθυμητό επίπεδο (πχ γραφοντας
SASS λοιπόν καταφέρνουμε, με το Nesting ή με τις μεταβήτές, να μπορεί ο developer να βρει γρηγορότερα τα κομμάτια που
θέλει να αλλάξει. Επίσης, αν εγώ αποφασίσω για κάποιο λόγο ότι θέλω να αλλάξω σε όλες τις παραγράφους μου χρώμα,
δεν θα χρειαστεί να πάω και να κάνω την αλλαγή σε όλες τις παραγράφους χειροκίνητα παρά μόνο στην μεταβλητή που
έχω ορίσει στην αρχή)
Το λέει και η λέξη, στο παράδειγμα με τις εικόνες που τοποθετούμε ανάλογα το μέγεθος της οθόνης, θα ήταν
λάθος ένας Χρήστης με κινητό να έβλεπε την εικόνα που προορίζεται για τα DESKTOP
διότι θα καταναλώσει περισσότερα δεδομένα χωρίς λόγο
Μία Ιστοσελίδα να μπορεί να αντοποκρίνεται ανάλογα με την οθόνη του χρήστη (phone - Desktop)
1) Responsive design
3 Βασικές Αρχές για Responsive design
2) Flexible/Responsive Images
3) Media Quaries
Να μπορεί να διαλέξει την καταληλη εικόνα ανάλογα με την οθόνη (π.χ. σε μεγαλες οθόνες να μπαίνει εικόνα με
μεγαλύτρη ανάλυση)
Τα παραπάνω λοιπόν επιτυγχάνονται γράφοντας media Quaries
Να μπορεί δηλαδή ένα component (π.χ. το Header που είδαμε πριν) Να αλλάζει τις ιδιότητές του, όπως το σχήμα
και το μέγεθος, αναλογα με την οθόνη.
1) Fluid Grids & Layouts
Το Ηeader σε οθόνη με πλάτος μεγαλύτερο
των 500px
Το ίδιο Ηeader σε οθόνη με
πλάτος μικρότερο των 500px
Οι 3 τύποι Laytous που υπάρχουν
To Float Layout είναι η παλαιότερη μορφή Layout. Πλέον δεν
χρησιμοποιείται τόσο πολύ, παρόλα αυτά, όλα τα παλαιώτερα sites
είναι βασισμένα σε αυτό το μοντέλο διάταξης. Κάθε Developer λοιπόν
πρέπει να την γνωρίζει για την σωστή συντήρηση αυτών των sites
Float Layout
Το Flexible Box Layout είναι άλλο ένα μοντέλο διάταξης.
Η ευέλικτη διάταξη επιτρέπει την αυτόματη τακτοποίηση
στοιχείων σε ένα δοχείο ανάλογα με το μέγεθος της οθόνης.
FLEXBOX
Tο πλέγμα CSS (CSS Grid) είναι το τελευταίο και πιο καινούριο
μοντέλο διάταξης. Δημιουργεί πολύπλοκες και ευέλικτες διατάξεις
σχεδίασης χωρίζοντας το χώρο σε γραμμές και στήλες.
CSS Grid (1/2)
1fr (fractional unit)
200px
Στο προηγούμενο παράδειγμα είδαμετην υλοποίηση του Grid
χρησιμοποιώντας το ακριβές μέγεθος κάθε στήλης.
Το ίδιο ακριβώς αποτέλεσμα θα μπορούσαμε να το πετύχουμε με
αλλους 2 τρόπους, δίνοντας Ονόματα στις στήλες, ή ονόματα στις
περιοχές.
CSS Grid (2/2)
Παράδειγμα με ονόματα στις περιοχές
Αρχιτεκτονική
Ένα ακόμη μικρό αλλά σημαντικό
κομμάτι του course, ήταν η σωστή
αρχιτεκτονική των φακέλων και των
αρχείον SASS. Η παρακάτω
αρχιτεκτονική εφαρμόζεται
συνήθως σε μεγαλύτερα project,
αλλά καλό θα ήταν κάποια βασικά
χαρακτηριστικά της να τα
ακολουθούμε και σε μικρότερα
project
abstract
pages
base
variables
mixins
Components
layout
animations
typography
utility classes
Cards
header
main grid
footer
Home
Bio
Contact
Ένα animation μπορεί να αναγκάσει ένα HTML στοιχείο
να αλλάξει την μορφή του σταδιακά σε διάστημα
προκαθορισμένου χρόνου. 'Ενας Developer μπορεί να
αλλάξει όσα CSS properties θέλει, όσες φορές θέλει. Για
να χρησιμοποιήσουμε το CSS animation, πρέπει πρώτα
να ορίσουμε κάποια keyframes.
Τα Keyframes κρατούν τις τιμές που θα έχουν τα CSS
properties σε συγκεκριμένες χρονικές στιγμές.
Παράδειγμα: Αν θέλουμε ένα animation να διαρκέσει
10s, μπορούμε να ορίσουμε τιμές διαφορετικές για όταν
θα είναι στο 0% (αρχή), στο 50% (5s), στο 100% (τέλος)
Μπορούμε όμως
δημιουργίσουμε και πιο μικρά
και εύκολα Animations,
χρησιμοποιόντας τις εντολές
transform & transition
Animations
Παράδειγμα
Τέλος θα ήθελα να επισημάνω το πόσο σημαντική ειναι η
εντολή support η οποία μας δίνει την ευκαιρία να
διαμορφόσουμε ένα site με περισσότερους τρόπους.
Για παράδειγμα, το Flexbox και το Grid δεν υποστηρίζονται
από όλους τους browsers, ειδικά τους πιο παλιούς. Με αυτή
την εντολή λοιπόν μπορεί ο χρήστης να έχει μια σωστά
δομημένη σελίδα με Float Layout που θα έχουμε
διαμορφώσει εμείς ωστέ να έχει και αυτός μία όμορφη
εμπειρία κατα την επισκεψη του στην Ιστοσελίδα μας.
Για να ελέγξουμε τι κάνει υποστηρίζει ο κάθε Browser,
επισκεπτόμαστε το: www.CANIUSE.com
@supports

Mais conteúdo relacionado

Semelhante a Advanced css and sass flexbox, grid, animations and more!

Html – basics of static html pages
Html – basics of static html pagesHtml – basics of static html pages
Html – basics of static html pagesManolis Kosmidis
 
Διαχείριση Ψηφιακού Περιεχομένου με το DSpace: Λειτουργία και τεχνικά ζητήματα
Διαχείριση Ψηφιακού Περιεχομένου με το DSpace: Λειτουργία και τεχνικά ζητήματαΔιαχείριση Ψηφιακού Περιεχομένου με το DSpace: Λειτουργία και τεχνικά ζητήματα
Διαχείριση Ψηφιακού Περιεχομένου με το DSpace: Λειτουργία και τεχνικά ζητήματαNikolaos Konstantinou
 
εισαγωγή στα συστήματα διαχείρισης περιεχομένου (Cms)
εισαγωγή στα συστήματα διαχείρισης περιεχομένου (Cms)εισαγωγή στα συστήματα διαχείρισης περιεχομένου (Cms)
εισαγωγή στα συστήματα διαχείρισης περιεχομένου (Cms)Theodoros Douvlis
 
Το Azure δεν είναι χορτοφάγο! - 59ο DotNetZone Event
Το Azure δεν είναι χορτοφάγο! - 59ο DotNetZone EventΤο Azure δεν είναι χορτοφάγο! - 59ο DotNetZone Event
Το Azure δεν είναι χορτοφάγο! - 59ο DotNetZone EventPanagiotis Kanavos
 
Thesis.Net Framework Training
Thesis.Net Framework TrainingThesis.Net Framework Training
Thesis.Net Framework Trainingpdalianis
 
Thesis.Net Framework
Thesis.Net FrameworkThesis.Net Framework
Thesis.Net FrameworkMGAKIS
 
Thesis.Net Features
Thesis.Net FeaturesThesis.Net Features
Thesis.Net FeaturesMGAKIS
 
B4 2 3 Slide Formatting
B4 2 3 Slide FormattingB4 2 3 Slide Formatting
B4 2 3 Slide Formattingpapettas
 
Ανάπτυξη Εφαρµογής Προφίλ Μηχανικών Λογισµικού από ∆εδοµένα Αποθετηρίων Λογισ...
Ανάπτυξη Εφαρµογής Προφίλ Μηχανικών Λογισµικού από ∆εδοµένα Αποθετηρίων Λογισ...Ανάπτυξη Εφαρµογής Προφίλ Μηχανικών Λογισµικού από ∆εδοµένα Αποθετηρίων Λογισ...
Ανάπτυξη Εφαρµογής Προφίλ Μηχανικών Λογισµικού από ∆εδοµένα Αποθετηρίων Λογισ...ISSEL
 
Εισαγωγήoooooooooooooooooooooooooooooooo
ΕισαγωγήooooooooooooooooooooooooooooooooΕισαγωγήoooooooooooooooooooooooooooooooo
Εισαγωγήooooooooooooooooooooooooooooooooandreasabiou
 
εννοιολογικοί χάρτες Ιπποκράτης Κοχλιαρίδης αεμ: 362
εννοιολογικοί χάρτες Ιπποκράτης Κοχλιαρίδης αεμ: 362εννοιολογικοί χάρτες Ιπποκράτης Κοχλιαρίδης αεμ: 362
εννοιολογικοί χάρτες Ιπποκράτης Κοχλιαρίδης αεμ: 362IPPOKRATIS KOCHLIARIDIS
 
SEO report for ddplastics
SEO report for ddplasticsSEO report for ddplastics
SEO report for ddplasticsKnowcrunch
 

Semelhante a Advanced css and sass flexbox, grid, animations and more! (20)

Html – basics of static html pages
Html – basics of static html pagesHtml – basics of static html pages
Html – basics of static html pages
 
Responsive Workflow & Wordpress
Responsive Workflow  & WordpressResponsive Workflow  & Wordpress
Responsive Workflow & Wordpress
 
Sample dreamweaver
Sample dreamweaver Sample dreamweaver
Sample dreamweaver
 
Διαχείριση Ψηφιακού Περιεχομένου με το DSpace: Λειτουργία και τεχνικά ζητήματα
Διαχείριση Ψηφιακού Περιεχομένου με το DSpace: Λειτουργία και τεχνικά ζητήματαΔιαχείριση Ψηφιακού Περιεχομένου με το DSpace: Λειτουργία και τεχνικά ζητήματα
Διαχείριση Ψηφιακού Περιεχομένου με το DSpace: Λειτουργία και τεχνικά ζητήματα
 
εισαγωγή στα συστήματα διαχείρισης περιεχομένου (Cms)
εισαγωγή στα συστήματα διαχείρισης περιεχομένου (Cms)εισαγωγή στα συστήματα διαχείρισης περιεχομένου (Cms)
εισαγωγή στα συστήματα διαχείρισης περιεχομένου (Cms)
 
Το Azure δεν είναι χορτοφάγο! - 59ο DotNetZone Event
Το Azure δεν είναι χορτοφάγο! - 59ο DotNetZone EventΤο Azure δεν είναι χορτοφάγο! - 59ο DotNetZone Event
Το Azure δεν είναι χορτοφάγο! - 59ο DotNetZone Event
 
Thesis.Net Framework Training
Thesis.Net Framework TrainingThesis.Net Framework Training
Thesis.Net Framework Training
 
Thesis.Net Framework
Thesis.Net FrameworkThesis.Net Framework
Thesis.Net Framework
 
Thesis.Net Features
Thesis.Net FeaturesThesis.Net Features
Thesis.Net Features
 
BSS_4_GRK
BSS_4_GRKBSS_4_GRK
BSS_4_GRK
 
B4 2 3 Slide Formatting
B4 2 3 Slide FormattingB4 2 3 Slide Formatting
B4 2 3 Slide Formatting
 
Ανάπτυξη Εφαρµογής Προφίλ Μηχανικών Λογισµικού από ∆εδοµένα Αποθετηρίων Λογισ...
Ανάπτυξη Εφαρµογής Προφίλ Μηχανικών Λογισµικού από ∆εδοµένα Αποθετηρίων Λογισ...Ανάπτυξη Εφαρµογής Προφίλ Μηχανικών Λογισµικού από ∆εδοµένα Αποθετηρίων Λογισ...
Ανάπτυξη Εφαρµογής Προφίλ Μηχανικών Λογισµικού από ∆εδοµένα Αποθετηρίων Λογισ...
 
Εισαγωγήoooooooooooooooooooooooooooooooo
ΕισαγωγήooooooooooooooooooooooooooooooooΕισαγωγήoooooooooooooooooooooooooooooooo
Εισαγωγήoooooooooooooooooooooooooooooooo
 
εννοιολογικοί χάρτες Ιπποκράτης Κοχλιαρίδης αεμ: 362
εννοιολογικοί χάρτες Ιπποκράτης Κοχλιαρίδης αεμ: 362εννοιολογικοί χάρτες Ιπποκράτης Κοχλιαρίδης αεμ: 362
εννοιολογικοί χάρτες Ιπποκράτης Κοχλιαρίδης αεμ: 362
 
SEO report for ddplastics
SEO report for ddplasticsSEO report for ddplastics
SEO report for ddplastics
 
Web2.0
Web2.0Web2.0
Web2.0
 
NoSQL Databases
NoSQL DatabasesNoSQL Databases
NoSQL Databases
 
Access2010
Access2010Access2010
Access2010
 
Access2010
Access2010Access2010
Access2010
 
Sqlschool 2017 recap - 2018 plans
Sqlschool 2017 recap - 2018 plansSqlschool 2017 recap - 2018 plans
Sqlschool 2017 recap - 2018 plans
 

Mais de rapidbounce

Business Branding
Business BrandingBusiness Branding
Business Brandingrapidbounce
 
The CRO Course (Win on Mobile)
The CRO Course (Win on Mobile)The CRO Course (Win on Mobile)
The CRO Course (Win on Mobile)rapidbounce
 
Generation Z the Newest Member to the Workforce
Generation Z the Newest Member to the WorkforceGeneration Z the Newest Member to the Workforce
Generation Z the Newest Member to the Workforcerapidbounce
 
Google Analytics & Google ads for beginners
Google Analytics & Google ads for beginnersGoogle Analytics & Google ads for beginners
Google Analytics & Google ads for beginnersrapidbounce
 
What to include on the front page of your website!
What to include on the front page of your website!What to include on the front page of your website!
What to include on the front page of your website!rapidbounce
 
E exports Academy - Leading small businesses into the future
E exports Academy - Leading small businesses into the futureE exports Academy - Leading small businesses into the future
E exports Academy - Leading small businesses into the futurerapidbounce
 
Facebook ads for beginners retention & loyalty_by_kouloumpi_anastasia
Facebook ads for beginners retention & loyalty_by_kouloumpi_anastasiaFacebook ads for beginners retention & loyalty_by_kouloumpi_anastasia
Facebook ads for beginners retention & loyalty_by_kouloumpi_anastasiarapidbounce
 
Marketing Adaptation in Covid Era
Marketing Adaptation in Covid EraMarketing Adaptation in Covid Era
Marketing Adaptation in Covid Erarapidbounce
 
How to use Instagram to grow your business
How to use Instagram to grow your businessHow to use Instagram to grow your business
How to use Instagram to grow your businessrapidbounce
 
Instagram - Ways to improve relationship building
Instagram - Ways to improve relationship buildingInstagram - Ways to improve relationship building
Instagram - Ways to improve relationship buildingrapidbounce
 
Freshworks Academy
   Freshworks Academy    Freshworks Academy
Freshworks Academy rapidbounce
 
This presentation is a great introduction to both fundamental programming con...
This presentation is a great introduction to both fundamental programming con...This presentation is a great introduction to both fundamental programming con...
This presentation is a great introduction to both fundamental programming con...rapidbounce
 
2020 02 emotional_intelligence_rapidbounce_presentation_by_elena
2020 02 emotional_intelligence_rapidbounce_presentation_by_elena2020 02 emotional_intelligence_rapidbounce_presentation_by_elena
2020 02 emotional_intelligence_rapidbounce_presentation_by_elenarapidbounce
 
3 simple habits to improve critical thinking
3 simple habits to improve critical thinking3 simple habits to improve critical thinking
3 simple habits to improve critical thinkingrapidbounce
 
Avant Garde Suites Presentation
Avant Garde Suites PresentationAvant Garde Suites Presentation
Avant Garde Suites Presentationrapidbounce
 
rapidbounce Presentation in Greek: "Python For Beginners"
rapidbounce Presentation in Greek: "Python For Beginners"rapidbounce Presentation in Greek: "Python For Beginners"
rapidbounce Presentation in Greek: "Python For Beginners"rapidbounce
 
VisitGreece.gr Site Redesign rapidbounce Presentation
VisitGreece.gr Site Redesign rapidbounce PresentationVisitGreece.gr Site Redesign rapidbounce Presentation
VisitGreece.gr Site Redesign rapidbounce Presentationrapidbounce
 
2020_Freshdesk_Admin & Agent_Fundamentals
2020_Freshdesk_Admin & Agent_Fundamentals2020_Freshdesk_Admin & Agent_Fundamentals
2020_Freshdesk_Admin & Agent_Fundamentalsrapidbounce
 

Mais de rapidbounce (20)

Business Branding
Business BrandingBusiness Branding
Business Branding
 
The CRO Course (Win on Mobile)
The CRO Course (Win on Mobile)The CRO Course (Win on Mobile)
The CRO Course (Win on Mobile)
 
Generation Z the Newest Member to the Workforce
Generation Z the Newest Member to the WorkforceGeneration Z the Newest Member to the Workforce
Generation Z the Newest Member to the Workforce
 
Google Analytics & Google ads for beginners
Google Analytics & Google ads for beginnersGoogle Analytics & Google ads for beginners
Google Analytics & Google ads for beginners
 
What to include on the front page of your website!
What to include on the front page of your website!What to include on the front page of your website!
What to include on the front page of your website!
 
E exports Academy - Leading small businesses into the future
E exports Academy - Leading small businesses into the futureE exports Academy - Leading small businesses into the future
E exports Academy - Leading small businesses into the future
 
Facebook ads for beginners retention & loyalty_by_kouloumpi_anastasia
Facebook ads for beginners retention & loyalty_by_kouloumpi_anastasiaFacebook ads for beginners retention & loyalty_by_kouloumpi_anastasia
Facebook ads for beginners retention & loyalty_by_kouloumpi_anastasia
 
Marketing Adaptation in Covid Era
Marketing Adaptation in Covid EraMarketing Adaptation in Covid Era
Marketing Adaptation in Covid Era
 
How to use Instagram to grow your business
How to use Instagram to grow your businessHow to use Instagram to grow your business
How to use Instagram to grow your business
 
Instagram - Ways to improve relationship building
Instagram - Ways to improve relationship buildingInstagram - Ways to improve relationship building
Instagram - Ways to improve relationship building
 
Freshworks Academy
   Freshworks Academy    Freshworks Academy
Freshworks Academy
 
This presentation is a great introduction to both fundamental programming con...
This presentation is a great introduction to both fundamental programming con...This presentation is a great introduction to both fundamental programming con...
This presentation is a great introduction to both fundamental programming con...
 
Cyan Residence
Cyan Residence Cyan Residence
Cyan Residence
 
2020 02 emotional_intelligence_rapidbounce_presentation_by_elena
2020 02 emotional_intelligence_rapidbounce_presentation_by_elena2020 02 emotional_intelligence_rapidbounce_presentation_by_elena
2020 02 emotional_intelligence_rapidbounce_presentation_by_elena
 
3 simple habits to improve critical thinking
3 simple habits to improve critical thinking3 simple habits to improve critical thinking
3 simple habits to improve critical thinking
 
Avant Garde Suites Presentation
Avant Garde Suites PresentationAvant Garde Suites Presentation
Avant Garde Suites Presentation
 
Deep blue tours
Deep blue toursDeep blue tours
Deep blue tours
 
rapidbounce Presentation in Greek: "Python For Beginners"
rapidbounce Presentation in Greek: "Python For Beginners"rapidbounce Presentation in Greek: "Python For Beginners"
rapidbounce Presentation in Greek: "Python For Beginners"
 
VisitGreece.gr Site Redesign rapidbounce Presentation
VisitGreece.gr Site Redesign rapidbounce PresentationVisitGreece.gr Site Redesign rapidbounce Presentation
VisitGreece.gr Site Redesign rapidbounce Presentation
 
2020_Freshdesk_Admin & Agent_Fundamentals
2020_Freshdesk_Admin & Agent_Fundamentals2020_Freshdesk_Admin & Agent_Fundamentals
2020_Freshdesk_Admin & Agent_Fundamentals
 

Advanced css and sass flexbox, grid, animations and more!

  • 1. Advanced CSS and Sass: Flexbox, Grid, Animations and More! Στούμπος Βασίλης
  • 2. CSS, SASS, Tι είναι και πού διαφέρουν Η λέξη CSS προέρχεται από τα αρχικά Cascading Style Sheets. Η CSS μας περιγράφει το τρόπο με τον οποίο τα HTML στοιχεία απεικονίζονται στην οθόνη (π.χ. χρώμα, μέγεθος, γραμματοσειρά κ.α.) Η Sass είναι μία γλώσσα υπολογιστή που πατάει πάνω στην CSS και χρησιμοποιείται με τον ίδιο τρόπο. Έχει καλύτερη δομή και περισσότερη δυναμη από την απλη CSS. Νesting Μεταβλητές Mixins Οι σπουδαιότερες διαφορές τους είναι 3 CSS SASS Διαφορές
  • 4. 3 Βασικές Αρχές για σωστή χρήση της HTML & CSS 2) Maintanable Κώδικας 3) Web Performance Να μπορεί κάποιος να κάνει εύκολα αλλαγές στον κώδικα ωστε να συντηρεί το site στο επιθυμητό επίπεδο (πχ γραφοντας SASS λοιπόν καταφέρνουμε, με το Nesting ή με τις μεταβήτές, να μπορεί ο developer να βρει γρηγορότερα τα κομμάτια που θέλει να αλλάξει. Επίσης, αν εγώ αποφασίσω για κάποιο λόγο ότι θέλω να αλλάξω σε όλες τις παραγράφους μου χρώμα, δεν θα χρειαστεί να πάω και να κάνω την αλλαγή σε όλες τις παραγράφους χειροκίνητα παρά μόνο στην μεταβλητή που έχω ορίσει στην αρχή) Το λέει και η λέξη, στο παράδειγμα με τις εικόνες που τοποθετούμε ανάλογα το μέγεθος της οθόνης, θα ήταν λάθος ένας Χρήστης με κινητό να έβλεπε την εικόνα που προορίζεται για τα DESKTOP διότι θα καταναλώσει περισσότερα δεδομένα χωρίς λόγο Μία Ιστοσελίδα να μπορεί να αντοποκρίνεται ανάλογα με την οθόνη του χρήστη (phone - Desktop) 1) Responsive design
  • 5. 3 Βασικές Αρχές για Responsive design 2) Flexible/Responsive Images 3) Media Quaries Να μπορεί να διαλέξει την καταληλη εικόνα ανάλογα με την οθόνη (π.χ. σε μεγαλες οθόνες να μπαίνει εικόνα με μεγαλύτρη ανάλυση) Τα παραπάνω λοιπόν επιτυγχάνονται γράφοντας media Quaries Να μπορεί δηλαδή ένα component (π.χ. το Header που είδαμε πριν) Να αλλάζει τις ιδιότητές του, όπως το σχήμα και το μέγεθος, αναλογα με την οθόνη. 1) Fluid Grids & Layouts
  • 6. Το Ηeader σε οθόνη με πλάτος μεγαλύτερο των 500px Το ίδιο Ηeader σε οθόνη με πλάτος μικρότερο των 500px
  • 7. Οι 3 τύποι Laytous που υπάρχουν
  • 8. To Float Layout είναι η παλαιότερη μορφή Layout. Πλέον δεν χρησιμοποιείται τόσο πολύ, παρόλα αυτά, όλα τα παλαιώτερα sites είναι βασισμένα σε αυτό το μοντέλο διάταξης. Κάθε Developer λοιπόν πρέπει να την γνωρίζει για την σωστή συντήρηση αυτών των sites Float Layout
  • 9. Το Flexible Box Layout είναι άλλο ένα μοντέλο διάταξης. Η ευέλικτη διάταξη επιτρέπει την αυτόματη τακτοποίηση στοιχείων σε ένα δοχείο ανάλογα με το μέγεθος της οθόνης. FLEXBOX
  • 10. Tο πλέγμα CSS (CSS Grid) είναι το τελευταίο και πιο καινούριο μοντέλο διάταξης. Δημιουργεί πολύπλοκες και ευέλικτες διατάξεις σχεδίασης χωρίζοντας το χώρο σε γραμμές και στήλες. CSS Grid (1/2)
  • 11. 1fr (fractional unit) 200px Στο προηγούμενο παράδειγμα είδαμετην υλοποίηση του Grid χρησιμοποιώντας το ακριβές μέγεθος κάθε στήλης. Το ίδιο ακριβώς αποτέλεσμα θα μπορούσαμε να το πετύχουμε με αλλους 2 τρόπους, δίνοντας Ονόματα στις στήλες, ή ονόματα στις περιοχές. CSS Grid (2/2) Παράδειγμα με ονόματα στις περιοχές
  • 12. Αρχιτεκτονική Ένα ακόμη μικρό αλλά σημαντικό κομμάτι του course, ήταν η σωστή αρχιτεκτονική των φακέλων και των αρχείον SASS. Η παρακάτω αρχιτεκτονική εφαρμόζεται συνήθως σε μεγαλύτερα project, αλλά καλό θα ήταν κάποια βασικά χαρακτηριστικά της να τα ακολουθούμε και σε μικρότερα project abstract pages base variables mixins Components layout animations typography utility classes Cards header main grid footer Home Bio Contact
  • 13. Ένα animation μπορεί να αναγκάσει ένα HTML στοιχείο να αλλάξει την μορφή του σταδιακά σε διάστημα προκαθορισμένου χρόνου. 'Ενας Developer μπορεί να αλλάξει όσα CSS properties θέλει, όσες φορές θέλει. Για να χρησιμοποιήσουμε το CSS animation, πρέπει πρώτα να ορίσουμε κάποια keyframes. Τα Keyframes κρατούν τις τιμές που θα έχουν τα CSS properties σε συγκεκριμένες χρονικές στιγμές. Παράδειγμα: Αν θέλουμε ένα animation να διαρκέσει 10s, μπορούμε να ορίσουμε τιμές διαφορετικές για όταν θα είναι στο 0% (αρχή), στο 50% (5s), στο 100% (τέλος) Μπορούμε όμως δημιουργίσουμε και πιο μικρά και εύκολα Animations, χρησιμοποιόντας τις εντολές transform & transition Animations Παράδειγμα
  • 14. Τέλος θα ήθελα να επισημάνω το πόσο σημαντική ειναι η εντολή support η οποία μας δίνει την ευκαιρία να διαμορφόσουμε ένα site με περισσότερους τρόπους. Για παράδειγμα, το Flexbox και το Grid δεν υποστηρίζονται από όλους τους browsers, ειδικά τους πιο παλιούς. Με αυτή την εντολή λοιπόν μπορεί ο χρήστης να έχει μια σωστά δομημένη σελίδα με Float Layout που θα έχουμε διαμορφώσει εμείς ωστέ να έχει και αυτός μία όμορφη εμπειρία κατα την επισκεψη του στην Ιστοσελίδα μας. Για να ελέγξουμε τι κάνει υποστηρίζει ο κάθε Browser, επισκεπτόμαστε το: www.CANIUSE.com @supports