Kamis, 18 Januari 2024

Apa itu CSS ? Belajar CSS Dasar untuk Pemula Beserta Penjelasannya


logo CSS



Apa itu CSS


CSS (Cascading Style Sheets) merupakan salah satu bahasa pemrograman web yang digunakan untuk
mengendalikan komponen web agar lebih terstruktur.

Apa Keuntungan Menggunakan CSS?


Hal yang paling terlihat menguntungkan adalah lebih mudah dalam mengontrol style banyak berkas.html berdasarkan id dan class-nya. Tidak perlu mendefinisikan satu per satu setiap bagian ataupun setiap berkas.

Mengapa Harus CSS?


Tidak menutup kemungkinan digunakan JavaScript atau yang semisalnya untuk mengatur sebuah tampilan wabsite. Namun, ada hal yang perlu diperhatikan yaitu mengenai ukuran script yang akan ditanam dalam sebuah berkas .html. Dengan CSS, untuk mengatur posisi bisa hanya diwakili oleh satu atau dua baris saja. Berbeda dengan jika menggunakan JavaScript. Selain itu, akan dijumpai permasalahan ketika diinginkan sebuah animasi. Biasanya digunakan jQuery yang berukuran 50kB hingga 100kB atau bahkan lebih dari itu hanya untuk menjalankan animasi sederhana saja. CSS juga bisa melakukan animasi hanya dengan beberapa baris saja yang tentunya itu tak ‘kan lebih dari 10kB.

CSS Itu Mudah Dipahami


Bahasa yang digunakan pada CSS sangat mudah untuk dipahami. Mengapa mudah dipahami? Karena dalam CSS menggunakan bahasa yang umum dan meminimalisasi penggunakan algoritma layaknya JavaScript.

Dukungan Terhadap CSS


Apakah CSS didukung oleh semua browser? Jawabnya, ya. Namun tak semua browser bisa menikmati layaknya browser lainnya. Browser yang paling banyak mendukung CSS adalah Firefox, Chrome, dan Safari. Akhir-akhir ini hampir semua website di dunia menggunakan CSS untuk mengatur tampilannya, baik itu dalam jumlah sedikit maupun banyak.

Cara Untuk Menyisipkan CSS Pada HTML


1. External Style Sheet

Sebuah external style sheet adalah file (.css) dimana berisi gaya CSS yang disimpan terpisah dari halaman website. Beberapa halaman dapat dihubungkan ke file css yang sama dan setiap perubahan yang dilakukan dalam external style sheet ini akan berdampak pada semua halaman yang memiliki tautan ke file css tersebut. Untuk cara berikut sangat ideal apabila diterapkan pada banyak halaman website. Sehingga mempersingkat waktu apabila ingin merubah tampilan tanpa harus membuka keseluruhan file satu-persatu. Setiap halaman harus dihubungkan dengan file CSS menggunakan tag <link>.

Contoh :


<head>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>



File tidak berisi tag html, dan style sheet harus disimpan dalam format .css. Adapun contohnya adalah sebagai berikut :
Contoh :

style.css
h2 { color:blue;}
a {background-color:green;}
table{background-color:blue;}


2. Internal / Embedded Style Sheet

Gaya CSS Internal Style Sheet bisa diterapkan untuk halaman web dengan menggunakan elemen style. Deklarasi dari gaya CSS yang diinginkan bisa dengan menempatkan di antara tag pembuka <style> dan tag penutup </style>.

Contoh :
<head>
<style type="text/css">
h2 { color:blue;}
a {background-color:green;}
table{background-color:blue;}
</style>
</head>

Tag <style> ditempatkan di dalam elemen head. Atribut type menentukan bahasa yang digunakan untuk pendefinisian gaya CSS tersebut. CSS adalah bahasa gaya yang digunakan secara luas / umum dan ditandai dengan nilai text/css.

Namun, tag <style> memiliki kelemahan, yaitu set gaya tidak bisa digunakan untuk seluruh situs website. Karena harus mengulangi definisi gaya dalam elemen style pada bagian atas setiap halaman website yang dibuat.

3. Inline Style

Metode paling sederhana untuk menambahkan gaya CSS di halaman web anda adalah dengan menggunakan gaya inline. Untuk menggunakan style ini, dapat diterapkan pada elemen HTML melalui atribut style. Berikut contoh penggunaannya :
Contoh :

<p style="color:#000;margin: 20px auto auto 10px;">Contoh Inline Style.</p>

Gaya inline tidak memiliki selector, deklarasi gaya diterapkan langsung pada parent element - yaitu tag <p>. Gaya inline memiliki kelemahan, yaitu tidak dapat digunakan kembali apabila dibutuhkan kembali. Misalkan jika ingin menerapkan gaya diatas untuk elemen p lainnya, maka harus diketikkan ulang dalam atribut elemen gaya tersebut. Selain itu, gaya inline yang terletak pada halaman HTMl akan membuat kode sulit dibaca dan memeliharanya.

Aturan Penulisan Pada CSS


Syntaxis CSS dibagi dalam 3 bagian :
selector {property : value}

dimana :

selector : tag HTML yang akan di definisikan (body, h1, Link , dll).
property : atribut yang akan diubah

Cara penulisan :

font-family : sans-serif;
font-size : small;

Cara penulisan yang salah :

font-family : “sans-serif”;
font-size : ‘small’;

Cara mendeklarasikan kelompok : (tanda koma serta &)

h1, h2 {color : green};
h3, h4 & h5 {color : red};

Cara menuliskan komentar :

menggunakan tanda : /* ….. */
menggunakan tanda : <!-- ….. →

Cara Mempermudah Pengaturan CSS


Style pada CSS memiliki struktur seperti berikut :


Selektor CSS


Selector digunakan untuk menentukan pada elemen apa style tersebut digunakan. Selector dapat berupa nama id elemen atau nama class. Bagian deklarasi menerangkan style yang akan dibuat. Bagian ini terdiri dari properti dan value. Properti dapat diisi dengan jenis warna, ukuran, perataan margin, dll. Sedangkan pada value diisi dengan nilai dari propertinya, misalnya red untuk warna. Setiap akhir penulisan properti dan value harus diakhiri dengan tanda titik koma (semicolon). Tanda ini juga digunakan sebagai pemisah antara satu properti dengan properti lain. Apabila tanda  titik koma (semicolon) lupa disertakan, maka style tersebut tidak akan dijalankan oleh browser.

Sering sekali menjadi pertanyaan ketika pertama mempelajari CSS adalah, bagaimana jika akan membuat style untuk beberapa elemen yang berbeda namun stylenya sama? Misalkan saja disini akan membuat style untuk elemen h1, h2 dan h3 namun memiliki style yang sama. Berikut contohnya :

h1, h2, h3 {

properti : value;
properti : value;

}

Boleh jadi banyak selektor (tag, id, dan class) yang akan diatur. Tentunya perlu aturan yang bisa dipahami dan mempermudah pembacaan, apalagi saat dikerjakan lebih dari satu orang. Berikut adalah cara menuliskan CSS ala WordPress, dan terbukti sangat mudah pembacaan.

selector1 {


property: value;
property: value;
}

selector2,
selector3 {

property: value;

}

Mengapa perlu dilakukan hal seperti ini? Karena biasanya setiap selector mempunyai banyak sekali property dan value. Berikut adalah contohnya.

#name,
#nickname,
#activities,
#learn,
#projects,
#contacts {


background: url('img/biru.png');
width: 80px;
text-align: center;
margin: 5px;
line-height: 80px;
-moz-border-radius: 50px;
-webkit-border-radius: 50px;
-moz-box-shadow: inset 0px 0px 5px rgba(0,0,0,0.3);
-webkit-box-shadow: inset 0px 0px 5px rgba(0,0,0,0.3);
}

#name,
#contacts {

margin-left: 90px;

}

Variasi Menuliskan Warna


Banyak kita jumpai dalam CSS penulisan warna yang beragam, misalkan untuk menuliskan warna merah, kita dapat menuliskannya dengan 5 cara, sbb:

1. color: red;
2. color: #ff0000;
3. color: #f00;
4. color: rgb(255,0,0);
5. color: rgba(255,0,0,1);
6. color:hsl(100,85%,50%);
7. color:hsla(100,85%,50%,0.6);

Penulisan warna yang beragam tersebut tergantung kebutuhan. Mana yang dianggap lebih memudahkan, itulah yang dipakai.

Matrix Value pada CSS


Pada CSS, penulisan sangat dimudahkan dengan dikenalnya matrix value. Berikut adalah macam-macam penulisan margin setiap sisinya 10px.

1. margin: 10px;
2. margin: 10px 10px 10px 10px;
3. margin-top: 10px; margin-right: 10px; margin-bottom: 10px; margin-left: 10px;

Manakah yang lebih enak digunakan? Jawabannya adalah tergantung kebutuhan. Jika yang diperlukan margin-left saja, maka cukuplah dengan menulis margin-left karena dengan menggunakan margin saja tidak bisa, menggunakan margin dengan matrix value juga tidak bisa.

Tidak hanya pada margin saja, matrix value juga bisa ditemukan pada property lainnya, misalkan: background, box-shadow, padding, transition, dan sebagainya.

Detail pada CSS


Fungsi dari CSS ini memang digunakan untuk melakukan detail pada elemen-elemen website yang dibangun. Detail yang biasanya diperhatikan adalah hover dan focus, terutama pada link. Berikut adalah format penulisan hover, berlaku juga pada focus dan visited.

a:hover {


color: red;
text-decoration: none;
}

Bisa dicoba dan dibuktikan ganti penulisan a:hover dengan a: hover (dengan spasi setelah ‘titik dua’). Maka hasilnya adalah kode CSS tersebut dianggap tidak valid.

Website Responsif dengan CSS


Website responsif adalah website yang memiliki beberapa penampilan tergantung seberapa lebar layar dia diakses. Untuk mencobanya, berikut adalah contoh website responsif:

1. sitia-its.org
2. css-tricks.com
3. facebook.com
4. dan banyak lagi lainnya

Untuk membuat website menjadi responsif, tambahkan kode berikut pada berkas CSS yang dibuat.

@media only screen and (max-width: 480px),
only screen and (max-device-width: 480px) {

/* isi dengan selector */

}

Ubah max-width sesuai lebar maksimal yang dibutuhkan sebuah layar. Fungsi dari responsif ini agar pengunjung dari berbagai lebar layar bisa nyaman mengunjungi website buatan kita.



Membuat Layout dengan CSS


Dalam membuat layout halaman web tidak membutuhkan tabel apabila memanfaatkan CSS. Kelebihan CSS dalam layout wes dibandingkan penggunaan tabel adalah fleksibilitas dan jga leih meminimalisasi jumlah ukuran byte file yang dihasilkan. Apabila menggunakan tabel untuk mendesain layout web, maka semakin banyak sel yang dibuat akan semakin besar pula ukuran byte file, dan mengakibatkan proses loading web pun membutuhkan waktu yang sedikit lebih lama dibandingkan menggunakan CSS saja.

Hal terpenting dalam pembuatan layout dengan menggunakan CSS adalah membagi elemen halaman menjadi beberapa divisi-divisi tertentu sesuai kebutuhan. Untuk yang pertama, misalkan saja untuk membuat bagian header. Berikut style untuk header yang akan dibuat :

#header {

padding : 20px;
border : 1px solid #000;
background-color : #999;

}

Dengan menggunakan style diatas, header yang akan ditampilkan terlihat seperti berikut :

Gambar header jika dikasih padding



Properti padding menyatakan jarak antara tepi sel dengan elemen yang berada di dalamnya. Untuk contoh diatas hanya sebagai contoh saja, dan bisa digunakan pada bagian lainnya seperti footer, main, sidebar, dll.

Apabila digunakan untuk layout sidebar, perlu ditambahkan kondisi tertentu supaya bisa terlihat dengan rapi. Sebagai contoh disini, menu navigasi atau sidebar terletak di sebelah kanan dan content berada di sebelah kiri.

#content {

padding : 10px;
border : 1px solid #000;

}

#sidebar {

float : left;
border : 1px solid #00f;
background-color : blue;
color : #fff;

}

Dengan menggunakan style diatas content akan terlihat seperti berikut : Efek penggunaan float : left ; dapat dilihat pada posisi sidebar gambar diatas dimana posisinya mengarah ke kiri.

Penutup


Itulah beberapa materi tentang css yang bisa saya sampaikan. Semoga kalian mengerti dengan apa yang saya jelaskan. Sebenarnya masih ada banyak materi lagi mungkin saya akan membahasnya nanti, itu juga kalo saya lagi gabut. Untuk sekarang saya hanya bisa membahgikan materi sederhana yang mungkin semua orang pasti sudah tahu. Dikarenakan sudah ada diberbagaikan sumber website untuk belajar css. Walaupun begitu saya ingin membagikan anggap aja untuk jaga jaga takutnya saya lupa lgai tentang materi css. 

Jumat, 12 Januari 2024

Cara membuat Form login dengan menggunakan HTML CSS dan JAVASCRIPT

Form login sering kali kita temui baik dari website, aplikasi ,media sosial bahkan pendaftaran KTP awoakwok. Biasanya didalam form login berisi tentang nama, password, email, dan No HP. Okee, selamat siang, malam, sore, pagi, subuh dan sebagainya. Kali ini saya akan membagikan kalian bagaimana sih cara membuat form login yang sederhana tetapi menarik.

Pada artikel ini, kalian akan mengetahui cara membuat form login dengan HTML CSS dan Javascript. Di Form login ini saya sedikit memakai Javascript untuk membuat passwordnya menjadi intraktif. Biasanya jika kalian mengisi password pasti tulisan yang kalian masukan tidak akan terlihat. Nah disini saya menambahkan sebuah toggle show hide password yang dimana kalian bisa melihat password dengan mengklik ikon mata.  Kalian hanya butuh HTML untuk membuat kerangkanya yahh terus dibalut sama CSS untuk mendesain tampilannya agak jadi bagus lah

Sudah tidak sabar untuk mengetahui cara membuat form login dengan HTML dan CSS dan Javascript? Ayok lah  ke penjelasan berikut ini. Sebelum itu, kalian bisa lihat dulu contoh form nya dibawah. Gimana? Bagus kan mwehehe, terima kasih jadii malu saya.

Form login sederhana tapi menarik


Kode html : 

<!DOCTYPE html>
<!-- Coding by Sicoding Turu | https://sicodingturu.blogspot.com/?m=1 -->
<html lang="en">
<head>
    <title> Login Form  show hide password</title> <!-- ini title -->
    <link href="https://fonts.googleapis.com/css2?family=Poppins:wght@300;500;600;700;800;900&display=swap" rel="stylesheet"> <!-- link font -->
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
    <link rel="stylesheet" href="ShowPassword.css"> <!-- link css -->
</head>
<body>

    <div class="form-container">
        <form>
            <h3> Masuk  </h3>
            <label for="username">Username</label>
            <input type="text" name="username" id="username" placeholder="Enter email or phone">

            <label for="password">Password</label>
            <div class="pass">
                <input type="password" class="pass" name="password" placeholder="Enter assword" id="password">
                <i id="show-hide" class="fa-solid fa-eye-slash"></i>
            </div>
            <button type="submit">Log In</button>
            <a href="#" class="forgot">Lupa kata sandi?</a>
            <hr>
            <div class="social-container">
                <h4> atau masuk dengan  </h4>
                <div class="social">
                    <div><a  class="go" href="#"><i class="fab fa-google"></i> Google </a></div>
                    <div><a class="fb" href="#"><i class="fab fa-facebook"></i> Facebook</a></div>
                </div>
            </div>
        </form>
    </div>

</body>
    <script src="ShowPassword.js"></script>
</html>







Kode CSS : 


* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    font-family: 'Poppins';
}

body {
    background-color: #007aff;
}

.form-container {
    width: 100%;
    display: flex;
    padding: 50px 20px;
    justify-items: center;
}

form {
    display: block;
    margin: auto;
    width: 400px;
    background-color: white;
    border-radius: 10px;
    backdrop-filter: blur(10px);
    border: 2px solid rgba(255, 255, 255, 0.1);
    box-shadow: rgb(204, 219, 232) 3px 3px 6px 0px inset, rgba(255, 255, 255, 0.5) -3px -3px 6px 1px inset;
    padding: 50px 35px;
}

form h3 {
    font-size: 30px;
    text-align: center;
    color: #000000;
    font-weight: 600;
    line-height: 20px;
}

form h3::before{
  content: '';
  position: absolute;
  background: red;
  width: 100px;
  height: 3px;
  top: 80px;
}

label {
    display: block;
    margin-top: 2rem;
    font-size: 1rem;
}

input {
    outline: none;
    border: 2px solid grey;
    width: 100%;
    border-radius: 4px;
    background-color: white;
    padding: 15px 10px;
    margin-top: 8px;
    font-weight: 500;
    transition: all .2s ease;
}

input:hover{
  border-color: #1235bd;
}

input::placeholder {
    color: #333;
    font-weight: 300;
}

.pass {
    position: relative;
}

.pass i {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    right: 20px;
}

#show-hide {
    font-size: 1rem;
}

button {
    margin-top: 30px;
    width: 100%;
    background-color: #007aff;
    padding: 12px 0;
    font-size: 18px;
    border-radius: 5px;
    cursor: pointer;
    border: none;
    transition: all 0.1s;
    color: white;
    margin-bottom: 15px;
}

button:hover {
    transform: translate(-0.25rem, -0.25rem);
    box-shadow: 0.25rem 0.25rem #2a2a2c;
}

.forgot{
  text-align: center;
  color: #007aff;
  font-weight: 400;
  text-decoration: none;
  font-size: 15px;
}

hr {
    margin-top: 20px;
    height: 1px;
    background-color: #ffffff7f;
    border: none;
    outline: navajowhite;
}

.social-container h4 {
    margin-top: 20px;
    margin-bottom: 20px;
    font-weight: 300;
    font-size: 15px;
    text-align: center;
    color: #555;
}

.social-container h4::before{
  content: '';
  position: absolute;
  width: 70px;
  height: 2px;
  background: #eaeaea;
  bottom: 195px;
  left: 40px;
}
.social-container h4::after{
  content: '';
  position: absolute;
  width: 70px;
  height: 2px;
  background: #eaeaea;
  bottom: 195px;
  right: 40px;
}

.social {
    display: flex;
    justify-content: center;
    width: 100%;
    flex-direction: column;
    gap: 20px;
}

.social div {
    width: 100%;
    border-radius: 8px;
    padding: 12px 5px;
    background-color: #db4437;
    text-align: center;
    margin: 0;
    cursor: pointer;
    transition: all .3s ease;
}

.social div:nth-child(2){
  background-color: #3b5998;
}

.social div:hover {
    transform: translateY(-5px);
}

.social a {
    text-decoration: none;
}

.go {
    color: white;
}

.fb {
    color: white;
}

.social i {
    margin-right: 4px;
}

@media screen and (max-width: 462px) {
    form {
        width: 100%;
    }
}



Kode Javascript :

const showHide = document.getElementById('show-hide');
let passwordInput = document.getElementById('password');

showHide.addEventListener('click', function () {
    showHide.classList.toggle('show');

    if (showHide.classList.contains('show')) {
        showHide.classList.remove('fa-eye-slash');
        showHide.classList.add('fa-eye');
        passwordInput.setAttribute('type', 'text');
    }
    else {
        showHide.classList.add('fa-eye-slash');
        showHide.classList.remove('fa-eye');
        passwordInput.setAttribute('type', 'password');
    }
});

Hasil Codingnya : 

hasil codingan



Gimana hasilnya gak ada yang error kan ? dengan kalian mencopy paste atau mendownload kode, kalian sudah mempunyai satu form login dengan tampilan lumayan keren. Jika kalian ingin mengubah silahkan gimana selera kalian aja. 

Sedikit hal yang ingin saya beritahu ke kalian. Tolong kasih saran kepada saya, kenapa ketika saya ingin mengindex kan blog saya ke Google Search Console tidak berhasil ke index atau gagal terus dalam pengindex an. Jika kalian punya solusi bagaimana cara ngatasinya bisa beritahu saya, akan saya terbantu jika kalian mau memberi solusi.

Seperti biasa saya  sudah menyiapkan file downloadnya, semoga bermanfaat terima kasih.















Kunjungi projects lainnya disini LIST PROJECT
Hubungi saya Contact
Sitemap Sitemap
Tentang saya About me

Kamis, 11 Januari 2024

membuat Products Card sederhana menggunakan HTML dan CSS

 Products Card atau biasa yang disebut dengan kartu produk ini adalah sebuah kartu yang biasa anda lihat di website - website penjualan. Products card ini digunakan sebagai kotak atau wadah yah untuk menyimpan tampilan suatu produk. 


Products card simple


Selamat malam bagi yang ingin tidur dan selamat datang bagi yang berkunjung. Terima kasih karena sudah mau mampir kesini untuk membaca blog saya ini hehe. Projek yang ingin saya bagikan ini yaitu cara membuat products card ( kartu produk ) sederhana, gak ribet, dan simple hanya menggunakan html dan css saja.

Kali ini saya membuat dengan 3 varian rasa, yaitu merah, biru, dan kuning. Perlu diingat untuk nanti ketika anda sudah mendapatkan codingan. Jika kalian ingin merubah warna defaulnya menjadi warna merah dan kuning. Kalian perlu mengubah warna serta gambarnya saja. Untuk sekarang mari kita ke kodenya dulu, nanti saya jelaskan.


Kode html : 

<!DOCTYPE html>

<!-- Products Card sederhana by Sicoding Turu -->

<html>

  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8" />

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Product Card | Sicoding Turu</title>

    <link rel="stylesheet" href="ProductCard.css" type="text/css" media="all" />

    <!-- ini favicon -->

        <link rel="shortcut icon" href="img/logo.png" type="image/x-icon" />

        <!-- ini link font -->

    <link rel="preconnect" href="https://fonts.googleapis.com">

    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>

    <link href="https://fonts.googleapis.com/css2?family=Alata&family=Anton&family=Carter+One&family=Mochiy+Pop+One&family=Poppins:wght@600&family=Rubik+Mono+One&display=swap" rel="stylesheet">

    <!-- link bootstrap-icons -->

    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css">

  </head>

  <body>

<div class="product-card">

<div class="product-links">

<a href=""><i class="bi bi-heart"></i></a>

<a href=""><i class="bi bi-share"></i></a>

</div>

<div class="product-tumb">

<img src="Image.png" alt=""> <!-- disini ganti dengan Image-2 atau Image-3 jika ingin diubah  -->

</div>

<div class="product-details">

<h4><a href="">Sneakers Converse</a></h4>

<h3>$4.500</h3>

</div>

<div class="buy-btn">


  <a href="#"><i class="bi bi-cart3"></i>Buy Now</a>

</div>

</div>

  </body>

</html>


Kode css : 

@import url('https://fonts.googleapis.com/css?family=Roboto:400,500,700');

*{

    -webkit-box-sizing: border-box;

            box-sizing: border-box;

    margin: 0;

    padding: 0;

}

a{

    text-decoration: none;

}

.product-card {

    width: 350px;

    position: relative;

    box-shadow: rgba(0, 0, 0, 0.07) 0px 1px 1px, rgba(0, 0, 0, 0.07) 0px 2px 2px, rgba(0, 0, 0, 0.07) 0px 4px 4px, rgba(0, 0, 0, 0.07) 0px 8px 8px, rgba(0, 0, 0, 0.07) 0px 16px 16px;

    margin: 50px auto;

    background: #1235b0; /* ubah warna disini menjadi merah atau kuning. untuk warna merah :#BD0206; Untuk warna kuning :#DBA135; */

    border-radius: 25px;

}


.product-tumb {

    display: flex;

    align-items: center;

    justify-content: center;

    background: transparent;

    

}


.product-tumb img {

    width: 50vw;

}

.product-details {

    padding: 20px;

    display: flex;

    justify-content: space-between;

    align-items: center;

}


.product-details h4 a {

    font-weight: 500;

    display: block;

    text-transform: uppercase;

    color: #fff;

    text-decoration: none;

    transition: 0.3s;

    font-family: 'roboto';

}


.product-details h4 a:hover {

    color: #fbb72c;

}


.product-details h3{

  color: #fbb72c;

  font-weight: 700;

  font-size: 'Poppins';

}


.product-links {

  display: flex;

  justify-content: space-between;

  align-items: center;

  padding: 20px 25px 0 25px;

}


.product-links a {

    color: #fff;

    transition: 0.3s;

    font-size: 22px;

}


.product-links a:hover {

    color: #fbb72c;

}


.buy-btn{

  display: flex;

  align-items: center;

  justify-content: center;

}

.buy-btn a{

  margin-bottom: 25px;

  width: 90%;

  padding: 12px 5px;

  background: #fff;

  color: #000000;

  border-radius: 10px;

  font-family: 'Poppins';

  transition: all .3s ease;

}


.buy-btn a i{

  font-size: 22px;

  margin-right: 80px;

  margin-left: 10px;

}


.buy-btn a:hover{

  background: #fbb72c;

  transform: scale(0.9);

}


@media (max-width: 900px){

  .product-tumb img{

    width: 80vw;

  }

  .product-card{

    width: 320px;

  }

}


Untuk previewnya bisa dilihat yah disini : 

Hasil codingan



CATATAN PENTING : JIKA KALIAN INGIN MENGUBAH TAMPILAN WARNA MAUPUN GAMBAR, KALIAN HANYA PERLU MENGGANTI GAMBARNYA DITAG " .Product-thumb img" dan " background" yang berada di class product-card. Jika kalian masih bingung apa yang saya bicarakan, kalian bisa liat nanti dicodingannya saya sudah kasih komentar mana yang harus diganti okeh.



Seperti biasa saya akan menyertakan link lagi ini sudah jadi rutinitas sehari hari hihi. Tapi tidak apa apa , anggap aja sebagai jalan keluar misalnya kalian lagi kepepet kuota habis atau lagi diperjalanan .


Link download




Silahkan lihat untuk projects yang lainnya disini List Projectst 

Rabu, 10 Januari 2024

Cara Membuat Responsive Navbar hanya dengan menggunakan html CSS dan JavaScript

Baiklah terima kasih telah mengklik judul ini, projects pertama yang saya bagikan adalah renponsive navbar ketika di klik pake ikon menu yang garis 3 dikiri ataupun disebelah kanan. Intinya seperti gambar diatas oke.


Responsive navbar sederhana



Sekedar memastikan saja, jika ada yang bilang "bang kenapa pas dimode dekstop navigasi nya gak keliatan" yah karena judul saya sudah bilang, ini adalah responsive navbar ketika di klik ikon yah.

Dibawah ini sudah ada contoh codenya, bagi kalian yang tidak ingin capek-capek copy paste. Kalian bisa pergi ke bawah konten ini, disitu saya sudah menyiapkan file lengkap nya berupa link menuju mediafire. Jadi, kalian tinggal download saja. Terima kasih.

Kode HTML  : 

Catatan "Dikarenakan code snippet html nya rada-rada jadi saya menggunakan manual dulu, kalau gak mau ribet bisa gulir ke bawah aja"




<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Navbar Responsive</title>
<link rel="stylesheet" href="NavbarResponsive.css" type="text/css" media="all" />
<link rel="shortcut icon" href="asset/Logo icon.jpg" type="image/x-icon" />
<!-- dibawah ini adalah link untuk menghubungkan antara font dan icon jadi jangan dibuat bingung ajah -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Alata&family=Anton&family=Carter+One&family=Mochiy+Pop+One&family=Poppins:wght@600&family=Rubik+Mono+One&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.2/font/bootstrap-icons.min.css">
<link href="https://cdn.jsdelivr.net/npm/remixicon@3.6.0/fonts/remixicon.css" rel="stylesheet">
<script type="module" src="https://unpkg.com/ionicons@7.1.0/dist/ionicons/ionicons.esm.js"></script>
<script nomodule src="https://unpkg.com/ionicons@7.1.0/dist/ionicons/ionicons.js"></script>
</head>

<body>
<!-- jika kalian ingin menghapus ikon logo bisa hapus dibagian img src -->
<header>
<div class="logo">
<img src="Logo icon.jpg" alt="" />
<a href="#">Sicoding Turu</a>
</div>
<nav>
<ul class="nav-menu">
<li><a href="#" class="on">Home</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Contact</a></li>
</ul>
</nav>
<div id="burger"><i class="bi bi-filter-right"></i></div>
</header>

<script src="NavbarResponsive.js" type="text/javascript" charset="utf-8"></script>
</body>
</html>


Kode CSS : 


*{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Poppins';
  list-style: none;
  text-decoration: none;
}

body{
  background: #fff;
}

header{
  background: #007aff;
  width: 100%;
  padding: 20px 35px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.logo{
  display: flex;
  align-items: center;
  justify-content: center;
}

.logo img{
  width: 50px;
  border-radius: 50%;
}

.logo a{
  color: white;
  font-size: 28px;
  font-weight: 700;
  cursor: pointer;
  margin-left: 10px;
}

#burger i{
  position: relative;
  z-index: 100;
  font-size: 40px;
  color: white;
  transition: all .5s;
}

#burger i:hover{
  background: #555;
  border-radius: 5px;
}

.nav-menu{
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100vh;
  flex-direction: column;
  background: #101010;
  transition: all .50s;
  display: flex;
  overflow: hidden;
}

.nav-menu li{
  margin-left: 30px;
  margin-right: 30px;
}

.nav-menu li a{
  font-size: 20px;
  font-weight: 500;
  color: white;
  cursor: pointer;
  display: block;
  padding: 15px 0 17px 0;
  text-align: center;
  transition: all .5s ;
}

.nav-menu li a:hover{
  background: grey;
  border-radius: 50px;
}

.nav-menu li a.on{
  margin-top: 90px;
}
  
.nav-menu.active{
  width: 100%;
}


Kode Javascript :  


const menu = document.querySelector('#burger');

const navmenu  = document.querySelector('.nav-menu');


menu.onclick = () => {

  navmenu.classList.toggle('active');

};




Hasil dari codingan bisa diliat disitu : 



Hasil codingan


Seperti yang saya katakan tadi diatas, jika kalian pusing dengan kodenya. Tunggu jangankan kalian, saya aja yang buatnya pusing banget hadeh. Bisa klik link dibawah, tenang link nya aman kok mwehehe...



Klik sini yaaa...



Terima kasih karena sudah mengunjungi blog saya, maaf karena walaupun yang datang hanya 1 atau 2 tapi saya akan tetap menyambut dengan hangat. 

Mungkin disetiap blog saya akan cantumkan link menuju mediafire biar tidak memakan waktu luang anda. Terima kasih




Daftar projek yang lainnya : List Projects

Tentang saya : About me

Hubungi saya : Contact


Selasa, 09 Januari 2024

animasi Popup sederhana dengan html css dan javascript

 Projek kali ini saya akan membagikan cara membuat animasi Popup sederhana yang dimana ketika tombol di klik akan muncul notif yang berisi anda sudah berhasil. Selamat siang, malam, pagi, subuh dan sebagainya, terima kasih sudah berkunjung lagi ke blog saya. Mohon maaf karena hari ini saya tidak akan berbicara panjang lebar dikarenakan waktu yang terbatas. Untuk sekarang langsung saja menuju ke bagian kodenya diatas.


Popup sederhana




Kode html seperti biasa :


<!DOCTYPE html>

<html lang="en">

<!-- animasi by Sicoding Turu -->

<head>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title> Animasi Popup | by Sicoding turu </title>

    <link rel="stylesheet" href="Popup.css">

</head>


<body>

    <div class="mainContainer">

      <div class="box"> <!-- ini bagian boxnya -->

        <button class="btn" id="submit"> Submit </button>

      </div>

        <div class="popupContainer" id="popupMenu"> <!-- ini bagian muncul notifikasinya -->

            <img id="image" src="./thankyou.webp" alt="">

            <h2> Selamat</h2>

            <p> Transaksi anda berhasil silahkan cek pada dompet kamu </p>

            <button id="close"> ok </button>

        </div>

    </div>

</body>

<script src="Popup.js"></script>

</html>


Kode css seperti biasa : 


@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300,400,500,600,700,800,900&display=swap');

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Poppins';
}

body {
    background-color: #007aff;
}

.mainContainer {
    width: 100%;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: relative;
}

.box{
  padding: 100px 80px;
  background:white ;
  border-radius:5%;
  box-shadow: rgba(17, 17, 26, 0.05) 0px 1px 0px, rgba(17, 17, 26, 0.1) 0px 0px 8px;
}

.btn {
  position: relative;
  z-index: 1;
    outline: none;
    border: 3px solid #00abf0;
    background-color:white;
    color: black;
    font-size: 20px;
    padding: 1rem 4rem;
    border-radius: 2rem;
    cursor: pointer;
    transition: all .5s ease;
    font-weight: 900;
}

.btn:before{
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 0;
  height: 100%;
  background: #00abf0;
  z-index: -1;
  border-radius: 2rem;
  transition: all .5s ease;
  outline: none;
}

.btn:hover {
    color: white;
}

.btn:hover:before{
  width: 100%;
}

.popupContainer {
    position: absolute;
    top: -10%;
    width:315px;
    border-radius: 1rem;
    background-color: #fff;
    visibility: hidden;
    padding: 1rem;
    transition: all .4s ease;
    z-index: 1000;
}

.popupActive {
    top: 10%;
    visibility: visible;
    transform: scale(1.1);
}

.popupContainer h2,
p {
    text-align: center;
}

#close {
    width: 100%;
    font-size: 1.2rem;
    margin-top: 1rem;
    padding: .6rem;
    border-radius: 2rem;
    border: none;
    text-transform: uppercase;
    font-weight: bold;
    cursor: pointer;
    color: rgb(77, 0, 0);
    background-color: #23fd53;
}

#close:hover {
    color: rgb(245, 73, 73);
    background-color: rgb(234, 183, 183);

}

#image {
    width: 5rem;
    margin: 0 auto;
    display: block;
    position: relative;
    top: -4rem;
    background-color: rgb(236, 225, 66);
    border-radius: 50%;
}

Kode javascript ada disini : 


const submitBtn = document.getElementById('submit')

const closeBtn = document.getElementById('close')

const popup = document.querySelector('.popupContainer')


submitBtn.addEventListener('click', function () {

    popup.classList.add('popupActive')


})

closeBtn.addEventListener('click', function () {

    popup.classList.remove('popupActive')


})


Untuk preview nya bisa dilihat diawal halaman : 


Hasil codingan



Seperti biasa saya akan membagikan link download file nya. Saya ucapkan terima kasih yang sudah datang dan berkunjung ke blog ini. Walaupun blog ini hanya membagikan informasi yang mungkin bagi kebanyakan orang sudah pada tahu. Tetapi, saya cuma ingin membagikan apa yang saya tahu hehe.


Klik disini





Kunjungi projek lainnya disini : Projects


Senin, 08 Januari 2024

Cara membuat animasi search box sederhana menggunakan html dan css


Terima kasih sudah mau berkunjung lagi ke sini, projects yang akan saya bagikan kali ini adalah Cara membuat animasi Search box sederhana yang dimana hanya menggunakan html dan css ajah. Lihat aja pada gambar dibawah atau bisa gulir ke bawah untuk liatin preview nya oke. Seperti biasa langsung ajah ke codingannya. Selamat menggulir - gulir.




Catatan : seperti biasa jangan aneh sama tampilan code snippetnya, susah buat ngatur ini itunya jadi agak ribet


Kode html bisa dilihat diatas : 


<!DOCTYPE html>

<!-- coding by Sicoding Turu | jangan lupa utak- atik lagi jika ingin ditambahkan ini itu -->

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <link rel="stylesheet" type="text/css" href="Search.css"> <!-- ini link css yah -->

    <title>Animation Search Box | Sicoding Turu</title> <!-- ini namanya title oke -->

</head>

<body>

    <form action="" class="search-bar">

        <input type="search" name="search" pattern=".*\S.*" placeholder="ketik angka 1 untuk senang..." required>

        <button class="search-btn" type="submit">

            <span>Search</span>

        </button>

    </form>

</body>

</html>



Kode CSS nya bisa lihat dibawah kasur anda : 


* {

border: 0;

box-sizing: border-box;

margin: 0;

padding: 0;

}

:root {

font-size: calc(16px + (24 - 16)*(100vw - 320px)/(1920 - 320));

}

body, button, input {

font: 1em Hind, sans-serif;

line-height: 1.5em;

}

body, input {

color: #171717;

}

body, .search-bar {

display: flex;

}

body {

background: #007aff;

height: 100vh;

}

.search-bar input,

.search-btn,

.search-btn:before,

.search-btn:after {

transition: all 0.25s ease-out;

}

.search-bar input,

.search-btn {

width: 3em;

height: 3em;

}

.search-bar input:invalid:not(:focus),

.search-btn {

cursor: pointer;

}

.search-bar,

.search-bar input:focus,

.search-bar input:valid  {

width: 100%;

}

.search-bar input:focus,

.search-bar input:not(:focus) + .search-btn:focus {

outline: transparent;

}

.search-bar {

margin: auto;

padding: 1.5em;

justify-content: center;

max-width: 30em;

}

.search-bar input {

background: transparent;

border-radius: 1.5em;

box-shadow: 0 0 0 0.4em #171717 inset;

padding: 0.75em;

transform: translate(0.5em,0.5em) scale(0.5);

transform-origin: 100% 0;

-webkit-appearance: none;

-moz-appearance: none;

appearance: none;

}

.search-bar input::-webkit-search-decoration {

-webkit-appearance: none;

}

.search-bar input:focus,

.search-bar input:valid {

background: #fff;

border-radius: 0.375em 0 0 0.375em;

box-shadow: 0 0 0 0.1em #d9d9d9 inset;

transform: scale(1);

}

.search-btn {

background: #171717;

border-radius: 0 0.75em 0.75em 0 / 0 1.5em 1.5em 0;

padding: 0.75em;

position: relative;

transform: translate(0.25em,0.25em) rotate(45deg) scale(0.25,0.125);

transform-origin: 0 50%;

}

.search-btn:before,

.search-btn:after {

content: "";

display: block;

opacity: 0;

position: absolute;

}

.search-btn:before {

border-radius: 50%;

box-shadow: 0 0 0 0.2em #f1f1f1 inset;

top: 0.75em;

left: 0.75em;

width: 1.2em;

height: 1.2em;

}

.search-btn:after {

background: #f1f1f1;

border-radius: 0 0.25em 0.25em 0;

top: 51%;

left: 51%;

width: 0.75em;

height: 0.25em;

transform: translate(0.2em,0) rotate(45deg);

transform-origin: 0 50%;

}

.search-btn span {

display: inline-block;

overflow: hidden;

width: 1px;

height: 1px;

}


.search-bar input:focus + .search-btn,

.search-bar input:valid + .search-btn {

background: #2762f3;

border-radius: 0 0.375em 0.375em 0;

transform: scale(1);

}

.search-bar input:focus + .search-btn:before,

.search-bar input:focus + .search-btn:after,

.search-bar input:valid + .search-btn:before,

.search-bar input:valid + .search-btn:after {

opacity: 1;

}

.search-bar input:focus + .search-btn:hover,

.search-bar input:valid + .search-btn:hover,

.search-bar input:valid:not(:focus) + .search-btn:focus {

background: #0c48db;

}

.search-bar input:focus + .search-btn:active,

.search-bar input:valid + .search-btn:active {

transform: translateY(1px);

}


@media screen and (prefers-color-scheme: dark) {

body, input {

color: #f1f1f1;

}

body {

background: #171717;

}

.search-bar input {

box-shadow: 0 0 0 0.4em #f1f1f1 inset;

}

.search-bar input:focus,

.search-bar input:valid {

background: #3d3d3d;

box-shadow: 0 0 0 0.1em #3d3d3d inset;

}

.search-btn {

background: #f1f1f1;

}

}




Hasil dari codingan diatas : 




 

Itulah tadi kode kode yang bisa kalian salin maupun paste. Ingat, tidak ada roti yang enak jika tidak dipanggang terlebih dahulu mwehehe. Seperti biasa, jika kalian tidak mau ribet ribet copy itu ini. Saya sudah menyiapkan link untuk kalian download, mudah kan. Terima kasih karena sudah mau menyempatkan untuk membaca blog saya. 


Bisa klik disini oke..  Link downlload




Untuk projek lainnya bisa dilihat disini : List Projects