Css - Rian010/Journal GitHub Wiki
CSS (Cascading Style Sheets) adalah bahasa yang digunakan untuk mendefinisikan tampilan dan styling dari sebuah website. CSS menghitung nilai default dari beberapa property, yang disebut inheritance. CSS juga memiliki prioritas yang diterapkan pada sebuah rule, yang disebut cascading.
CSS dapat digunakan dalam beberapa bentuk, yaitu inline, embedded, atau external. Inline CSS digunakan ketika hanya ingin mengubah style pada suatu elemen spesifik. Embedded CSS digunakan ketika ingin mengatur style pada suatu halaman tertentu. Sedangkan external CSS digunakan ketika ingin mengatur style pada beberapa halaman atau website.
Contoh penggunaan CSS inline, embedded, dan external:
<p style="color: red; font-size: 14px;">Halo dunia!</p>
<head>
<style>
p {
color: blue;
font-size: 16px;
}
</style>
</head>
<body>
<p>Halo dunia!</p>
</body>
<head>
<link rel="stylesheet" type="text/css" href="styles.css">
</head>
<body>
<p>Halo dunia!</p>
</body>
Selectors adalah cara untuk memilih elemen HTML yang akan diberi style. Beberapa selector yang umum digunakan adalah ID, Class, Element, Attribute, dan Pseudo-class.
Properties adalah cara untuk mengatur style pada elemen yang telah dipilih. Beberapa properties umum yang digunakan adalah Color, Font, Background, Border, Margin, dan Padding.
Contoh penggunaan selectors dan properties:
#header {
background-color: lightblue;
padding: 20px;
}
.highlight {
color: red;
font-weight: bold;
}
p {
margin-bottom: 10px;
}
input[type="checkbox"] {
margin-right: 10px;
}
a:hover {
text-decoration: underline;
}
Box Model adalah cara untuk mengatur posisi, ukuran, dan margins dari sebuah elemen HTML. Box Model terdiri dari beberapa bagian, yaitu Content, Padding, Border, dan Margin.
Contoh penggunaan box model:
div {
width: 300px;
height: 200px;
border: 1px solid black;
padding: 20px;
margin: 10px;
}
div {
box-sizing: border-box;
width: 300px;
height: 200px;
border: 1px solid black;
padding: 0;
margin: 0;
}
Posisi dan Layout adalah cara untuk mengatur posisi dan susunan dari sebuah elemen HTML. Beberapa posisi dan layout yang umum digunakan adalah Static, Relative, Absolute, Fixed, Float, dan Grid.
Contoh penggunaan posisi dan layout:
p {
position: static;
top: 0;
left: 0;
}
div {
position: relative;
top: 20px;
left: 30px;
}
header {
position: absolute;
top: 0;
left: 0;
right: 0;
}
footer {
position: fixed;
bottom: 0;
left: 0;
right: 0;
}
img {
float: left;
margin-right: 10px;
}
.grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 10px;
}
Transisi, Animation, dan Flexbox adalah fitur-fitur canggih dari CSS yang digunakan untuk membuat animasi dan responsive design.
Contoh penggunaan transisi, animation, dan flexbox:
button {
transition: all 0.3s ease;
}
button:hover {
background-color: lightblue;
}
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
div {
animation: fadeIn 1s linear both;
}
.flex-container {
display: flex;
justify-content: center;
align-items: center;
flex-wrap: wrap;
}
.flex-item {
flex: 1 1 auto;
margin: 10px;
}
Media Queries dan Responsive Design adalah cara untuk mengatur tampilan dan styling dari sebuah website sesuai dengan ukuran layar perangkat.
Contoh penggunaan media queries dan responsive design:
@media screen and (max-width: 600px) {
div {
width: 100%;
}
}
.container {
max-width: 1200px;
margin: 0 auto;
}
@media screen and (max-width: 768px) {
.container {
width: 100%;
}
}
Preprocessors dan Frameworks CSS adalah tools yang digunakan untuk mempermudah dan mempercepat pengembangan CSS. Beberapa preprocessor dan framework yang umum digunakan adalah Sass, Less, Stylus, Bootstrap, dan Foundation.
Contoh penggunaan preprocessor dan framework CSS:
$primary-color: #333;
.header {
background-color: $primary-color;
}
<link rel="stylesheet" href="bootstrap.min.css">
<div class="container">
<div class="row">
<div class="col-lg-6">
Kolom Satu
</div>
<div class="col-lg-6">
Kolom Dua
</div>
</div>
</div>
Optimisasi dan Best Practices CSS adalah cara untuk mempercepat loading dan rendering dari sebuah website. Beberapa optimisasi dan best practices yang umum digunakan adalah Minify CSS, Use CDN, Avoid !important, dan Use Shorthand Property.
Contoh penggunaan optimisasi dan best practices CSS:
/* Before */
body {
background-color: white;
color: black;
}
/* After */
body{background-color:white;color:black;}
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" integrity="sha384-..." crossorigin="anonymous">
/* Before */
.header {
background-color: lightblue !important;
}
/* After */
.header--special {
background-color: lightblue;
}
/* Before */
margin-top: 10px;
margin-right: 20px;
margin-bottom: 10px;
margin-left: 20px;
/* After */
margin: 10px 20px;