Cztery Pięć sposobów centrowania elementu w div.
Najpierw przygotujemy style dla html, mały reset nie jest zły 😉
* {
padding: 0;
margin: 0;
}
html,
body {
margin: 0;
padding: 0;
height: 100%;
}
body {
overflow: hidden;
} Cztery Pięć sposobów centrowania elementu w div.
Najpierw przygotujemy style dla html, mały reset nie jest zły 😉
* {
padding: 0;
margin: 0;
}
html,
body {
margin: 0;
padding: 0;
height: 100%;
}
body {
overflow: hidden;
} Podam dwa sposoby na przyspieszenie renderowania się stron.
I. Sposób
Pierwszy sposób dotyczy najnowszych przeglądarek ale w przyszłości będzie działać wszędzie. Tego sposobu używa aliexpress.com 🙂 Chyba największy sklep na świecie, więc czy Chińczycy mogą się mylić 😉
Poniższy przykład wyrenderuje stronę dopiero wtedy kiedy przetworzy całą zawartość app.css
<head>
<link rel="stylesheet" href="app.css" />
</head>
<body>
<header class="page-header">...</header>
<section class="sidebar">...</section>
<main class="content">...</main>
<footer class="page-footer">...</footer>
</body> Zaczynamy od deklaracji kolorów które będą nam potrzebne w projekcie.
$colors: (
grey: (
base: #4d4e55,
light: #c8c8ce
),
yellow: (
base: #ffae00
),
green: (
base: #00ff15
)
);Oczywiście nic nie stoi na przeszkodzie aby modyfikować naszą deklarację dodając następne nazwy kolorów light, lighter, lightest, dark, darker, darkest
Mniej więcej wyglądało by tak.
$colors: (
grey: (
base: #4d4e55,
light: xxxx,
lighter: xxxx,
lightest: xxxx,
dark: xxxx
darker: xxxx
darkest: xxxx
),
yellow: (
base: #ffae00
),
green: (
base: #00ff15
)
); Aby umożliwić korzystanie z scss w create-react-app robię podstawowe rzeczy. Najpierw zerknij w package.json na razie jest minimalistycznie teraz z konsoli uruchamiam npm run eject
Potrzebnych nam są jeszcze trzy biblioteki node-sass, sass-loader oraz resolve-url-loader.
Ja używam yarna czyli uruchamiam
yarn add -D sass-loader node-sass resolve-url-loaderlub dla tych co używają NPM
npm i -D sass-loader node-sass resolve-url-loader // nowy sass use math
@use 'sass:math';
.row {
display: flex;
flex-wrap: wrap;
}
$columns: 12;
@for $i from 1 through $columns {
.col-#{$i} {
// flex: 0 0 100% / $columns * $i;
// nowy sass
flex: 0 0 math.div(100%, $columns) * $i;
}
.col-offset-#{$i} {
// margin-left: 100% / $columns * $i;
// nowy sass
margin-left: math.div(100%, $columns) * $i;
}
}
// Responsive Breakpoints
[class^='col-'] {
// Tablets
@media (max-width: 768px) {
flex-basis: 50%;
}
// Mobiles
@media (max-width: 480px) {
flex-basis: 100%;
}
}