Rumah >hujung hadapan web >tutorial css >Pengenalan Praktikal untuk Reka Bentuk Bahan Lite oleh Google
Julai 2015 menyaksikan Google Release Material Design Lite, perpustakaan front-end yang direka untuk memudahkan untuk menambah rupa reka bentuk bahan dan merasa ke laman web.
Dalam artikel ini saya memberi tumpuan kepada prinsip asas dan komponen reka bentuk bahan berikut dan bagaimana anda boleh melaksanakannya menggunakan Perpustakaan Reka Bentuk Bahan (MDL):
Lihat templat demo pena menggunakan bahan reka bentuk bahan oleh SitePoint (@SitePoint) pada codepen.
mari kita mulakan.
termasuk lite reka bentuk bahan dalam projek anda
Ketika termasuk MDL dalam projek anda, anda mempunyai pilihan berikut:
Seterusnya, sebelum tag penutup , tambahkan rujukan ke fail MDL JavaScript:
<span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.indigo-pink.min.css"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://fonts.googleapis.com/icon?family=Material+Icons"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> href<span>="css/styles.css"</span>></span></span>
tipografi dalam reka bentuk bahan lite
<span><span><span><script</span> src<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.min.js"</span>></span><span> </span></span><span><span></span><span><span></script</span>></span></span>Typefaces Reka Bentuk Bahan untuk Bahasa Inggeris dan Bahasa Inggeris (Latin, Greek, dan Cyrillic Watak) adalah Roboto dan Noto.
3
Untuk watak Latin, Yunani, dan Cyrillic, spesifikasi reka bentuk bahan mencadangkan skala tipografi 12, 14, 16, 20, dan 34. Anda boleh menggunakan prinsip tipografi reka bentuk bahan menggunakan MDL dengan menambahkan satu set kelas tertentu ke markup.
contohnya, menambah .mdl-typography-dinsplay-2 ke tag
, menambah nilai saiz fon 45px dan 34px, masing-masing :
<span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="http://fonts.googleapis.com/css?family=Roboto:400,100,500,300italic,500italic,700italic,900,300"</span>></span></span>
MDL mempunyai beberapa kelas dengan skala tipografi, kebolehcapaian, dan prinsip kebolehbacaan yang dibakar. Ini menjadikannya lebih mudah untuk memaparkan kandungan teks yang indah yang menyenangkan untuk dibaca tanpa mengira peranti yang digunakan untuk mengaksesnya.
<span><span><span><h1</span> class<span>="mdl-typography--display-2"</span>></span>Title<span><span></h1</span>></span> </span><span><span><span><p</span> class<span>="mdl-typography--display-1"</span>></span> </span> Sub-title <span><span><span></p</span>></span></span>Untuk senarai lengkap kelas tipografi, lawati halaman komponen tipografi MDL di GitHub.
Ambil perhatian nama fail stylesheet perpustakaan MDL: material.indigo-ink.min.css . Nama menunjuk kepada palet warna reka bentuk bahan yang dilaksanakan dalam stylesheet. Palet warna lalai menggunakan indigo sebagai warna primer dan merah jambu sebagai warna aksen. Tetapi anda tidak terjebak dengan ini. Berikut adalah cadangan Reka Bentuk Bahan mengenai bagaimana untuk mengerjakan palet warna tersuai dan cara melaksanakannya menggunakan MDL.
Reka bentuk bahan suka menggabungkan warna, bayang -bayang, dan sorotan yang berani dan diredam:
Warna harus tidak dijangka dan bersemangat.
Spesifikasi reka bentuk bahan google
Reka bentuk bahan menawarkan pelbagai palet warna yang indah yang berfungsi dengan harmoni bersama. Untuk menjadikannya lebih mudah untuk memilih warna, setiap warna dalam palet mempunyai label nombor serta nilai warna heksadesimal untuk mengenalinya. Garis panduan reka bentuk bahan menunjukkan 500 warna sebagai warna utama. Warna -warna lain yang terbaik digunakan sebagai warna aksen.
Apabila anda membuat pemilihan warna tersuai untuk laman web anda, reka bentuk bahan mengesyorkan bahawa anda memilih tiga warna dari palet utama dan satu warna aksen dari palet sekunder. Berikut adalah contoh:
Hadkan penggunaan warna aksen ke pautan, butang tindakan utama anda, dan beberapa komponen seperti suis dan slider. Elakkan menggunakan warna aksen untuk teks badan:
Juga, garis panduan reka bentuk bahan tidak menggalakkan menggunakan warna aksen di kawasan besar halaman dan di bar aplikasi. Terutama penting adalah tidak menggunakan warna yang sama untuk kedua -dua butang tindakan terapung dan latar belakang:
Menyesuaikan palet warna lalai dalam reka bentuk bahan lite
anda boleh beralih dari palet indigo-pink lalai ke palet tersuai anda sendiri dalam salah satu cara berikut.
Cari URL ke fail STYLESEHEE MDL di dalam atribut HREF dari tag
Ganti
<span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.indigo-pink.min.css"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://fonts.googleapis.com/icon?family=Material+Icons"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> href<span>="css/styles.css"</span>></span></span>
anda sudah selesai!
Jika anda lebih suka menjadi tuan rumah fail MDL yang disusun dan diminimumkan pada pelayan anda, laman web MDL telah dilindungi. Di sana anda akan dapati alat penyesuaian dan pratonton, yang membolehkan anda memilih palet warna primer dan aksen dari roda warna interaktif. Anda kemudian boleh memuat turun CSS untuk tema pilihan anda dan pasangkannya terus ke dalam projek anda:
komponen susun atur MDL
MDL melekatkan keseluruhan susun atur di dalam elemen kontena dengan kelas .MDL-LAYOUT .MDL-JS-LAYOUT.
Mula dengan menambahkan coretan kod berikut selepas pembukaan tag dokumen HTML anda:
<span><span><span><script</span> src<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.min.js"</span>></span><span> </span></span><span><span></span><span><span></script</span>></span></span>MDL menggunakan CSS Flexbox untuk susun atur. Elemen .MDL-Layout adalah bekas flex dengan harta flex-arah yang ditetapkan ke lajur.
Komponen susun atur termasuk empat sub-komponen berikut:
Bagi demo HTML yang mengiringi artikel ini, saya telah memilih navigasi tab menggunakan komponen tab. Keindahan tab adalah, walaupun kandungannya dipotong ke dalam skrin yang saling eksklusif, semua bahagian diletakkan secara fizikal pada halaman yang sama. Ini bermakna apabila pengguna mengklik pada pautan navigasi tab, mereka tidak perlu menunggu pelayan memuatkan halaman baru dalam penyemak imbas mereka. Semua kandungan tersedia dengan serta -merta, dengan itu mewujudkan pengalaman yang menyenangkan untuk pelawat tapak.
dengan cepat membina susun atur header tab, ikuti langkah -langkah ini:
Tambahkan dua lagi kelas ke elemen kontena susun atur yang anda dikodkan lebih awal-.mdl-layout-header-fixed dan .mdl-layout--fixed-tabs:
<span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="http://fonts.googleapis.com/css?family=Roboto:400,100,500,300italic,500italic,700italic,900,300"</span>></span></span>Perhatikan bagaimana MDL menganjurkan CSS menggunakan kelas BEM Namespaced. Jika anda tidak biasa dengan metodologi BEM, bekerja dengan BEM pada skala - nasihat dari pemaju atas oleh Patrick Catanzariti menawarkan gambaran keseluruhan yang hebat.
Seterusnya, kod bahagian
<span><span><span><h1</span> class<span>="mdl-typography--display-2"</span>></span>Title<span><span></h1</span>></span> </span><span><span><span><p</span> class<span>="mdl-typography--display-1"</span>></span> </span> Sub-title <span><span><span></p</span>></span></span>Akhirnya, anda perlu menambah panel kandungan yang sepadan:
<span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.indigo-pink.min.css"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://fonts.googleapis.com/icon?family=Material+Icons"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> href<span>="css/styles.css"</span>></span></span>
panel dengan mempunyai kelas .is-aktif dan akan dipaparkan secara lalai.
Demo juga menggunakan bahagian laci. Laci adalah panel sampingan yang boleh anda sembunyikan dan tunjukkan dengan klik butang. Anda juga boleh memilih untuk memastikan laci terbuka dan tetap supaya kandungannya sentiasa tetap dalam pandangan penuh.
Menggunakan coretan kod yang anda tambahkan lebih awal, hanya selepas bahagian
<span><span><span><script</span> src<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.min.js"</span>></span><span> </span></span><span><span></span><span><span></script</span>></span></span>Lihat coretan ini dalam tindakan atau periksa kod sumber projek demo untuk pelaksanaan penuh komponen navigasi dan laci tab.
grid lite reka bentuk bahan
anda melampirkan lajur grid di dalam elemen kontena dengan kelas .mdl-grid:
Secara lalai, elemen kontena lajur grid merangkumi keseluruhan lebar skrin. Jika ini bukan apa yang anda mahukan, terpulang kepada anda untuk menentukan lebarnya dalam lembaran styles anda.
<span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="http://fonts.googleapis.com/css?family=Roboto:400,100,500,300italic,500italic,700italic,900,300"</span>></span></span>Contohnya, projek demo untuk artikel ini melaksanakan kedua-dua skrin penuh dan bahagian berkotak berpusat:
html:
dan CSS:
<span><span><span><h1</span> class<span>="mdl-typography--display-2"</span>></span>Title<span><span></h1</span>></span> </span><span><span><span><p</span> class<span>="mdl-typography--display-1"</span>></span> </span> Sub-title <span><span><span></p</span>></span></span>Juga, jika anda ingin tidak mempunyai margin antara lajur grid, MDL mempunyai kelas berguna yang boleh anda tambahkan ke elemen kontena lajur grid-.mdl-grid-tidak ada:
<span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.teal-amber.min.css"</span>></span></span>ini akan memberi anda sesuatu seperti ini:
<span><span><span><div</span> class<span>="mdl-layout mdl-js-layout"</span>></span> </span> <span><!-- All your template markup goes here --> </span><span><span><span></div</span>></span></span>
Seterusnya, anda membina lajur di dalam elemen grid .MDL dengan menambahkan elemen
Jika anda ingin mengatasi saiz lajur lalai, anda perlu menambah kelas .mdl-cell-{Number} -col dengan nombor antara 1 hingga 12. Berikut adalah kod untuk grid 2 lajur :
lihat demo langsung di Codepen.
<span><span><span><div</span> class<span>="mdl-layout </span></span></span><span><span> mdl-js-layout mdl-layout--fixed-header </span></span><span><span> mdl-layout--fixed-tabs<span>"</span>></span> </span><span><span><span></div</span>></span></span>
Jika reka bentuk anda memerlukannya, MDL menawarkan kelas utiliti berguna untuk menyembunyikan lajur pada saiz skrin tertentu:
Untuk melihat ini dalam tindakan, lihat bahagian selamat datang projek demo pada saiz skrin yang berbeza. Anda akan segera melihat bahawa bulatan merah jambu hiasan di sebelah item senarai tidak dapat dilihat pada skrin kecil:
komponen kad lite reka bentuk bahan
inilah cara reka bentuk bahan mentakrifkan komponen kad:
Kad adalah sekeping bahan yang berfungsi sebagai titik masuk ke maklumat yang lebih terperinci. Kad boleh mengandungi foto, teks, dan pautan mengenai subjek tunggal.
Reka bentuk bahan specAnda boleh menambah pelbagai jenis kandungan ke kad tunggal, tetapi pastikan ia semua berkaitan dengan topik teras. Juga, elakkan meletakkan terlalu banyak maklumat atau terlalu banyak pautan dan butang di dalam kad. Sebaliknya, tunjuk pengguna ke halaman khusus di mana anda telah meletakkan maklumat yang lebih terperinci mengenai topik tersebut.
Berikut adalah cara anda boleh menambah kad mudah ke halaman anda menggunakan komponen kad MDL:
anda membungkus kandungan kad di dalam elemen kontena dengan kelas .mdl-kad. Kelas DP.
<span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.indigo-pink.min.css"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> </span></span><span> <span>href<span>="https://fonts.googleapis.com/icon?family=Material+Icons"</span>></span> </span><span><span><span><link</span> rel<span>="stylesheet"</span> href<span>="css/styles.css"</span>></span></span>Seterusnya, anda menambah bekas untuk bahagian kad berikut:
Tajuk kad, menggunakan kelas .mdl-card__title
Lihat Kad Lite Reka Bentuk Bahan Pena oleh SitePoint (@SitePoint) pada Codepen.
Anda juga boleh menghidupkan sel grid ke dalam komponen kad dengan menambahkan kelas .mdl-kad yang sesuai ke elemen dengan kelas sel .mdl:
Anda boleh mencari pendekatan ini dalam projek demo yang disertakan. Ini adalah cara yang baik untuk mencapai susun atur berjubin yang responsif:
<span><span><span><script</span> src<span>="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.min.js"</span>></span><span> </span></span><span><span></span><span><span></script</span>></span></span>
Kesimpulan
Artikel ini telah meneroka Perpustakaan Lite Reka Bentuk Bahan oleh Google dan meletakkannya dalam praktik dalam templat web HTML yang sebenar.
MDL bukan rangka kerja yang komprehensif seperti, contohnya, bootstrap. Ia tidak mempunyai anda dilindungi untuk semua komponen dan gaya aplikasi anda kemungkinan besar memerlukan. Oleh itu, mengharapkan untuk kod beberapa ciri diri anda.
Walau bagaimanapun, perpustakaan masih berkembang dan mungkin mengejutkan kita dengan beberapa perkara baru dalam siaran masa depan. Juga, web menawarkan ekosistem reka bentuk bahan yang kaya untuk pereka dan pemaju, kebanyakannya bebas.Anda boleh menggunakan templat HTML untuk artikel ini, bersama -sama dengan templat di laman web MDL, sebagai satu lagi sumber untuk mula bereksperimen dengan MDL dan membina projek reka bentuk bahan anda sendiri.
lihat panduan kami untuk tema UI bahan terbaik.
Soalan Lazim (Soalan Lazim) Mengenai Reka Bentuk Bahan Lite oleh Google
Ya, bahan reka bentuk bahan terbuka dan bebas untuk digunakan untuk projek peribadi dan komersial. Ia dilesenkan di bawah Lesen Apache 2.0, yang membolehkan anda menggunakan, mengubah suai, dan mengedarkan perisian secara bebas, dengan syarat anda mematuhi syarat -syarat lesen.
Atas ialah kandungan terperinci Pengenalan Praktikal untuk Reka Bentuk Bahan Lite oleh Google. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!