Teknik reka bentuk yang popular adalah membuat bekas kandungan yang kelihatan seperti selembar kertas dan menyusun helaian kertas lain di bawahnya, menambah gaya berlapis atau tiga dimensi. Kita boleh mencipta kesan ini dengan menggunakan CSS tegak lurus, tetapi terdapat pelbagai jenis reka bentuk kertas bertumpuk yang boleh kita pertimbangkan. Kami akan memberikan potongan untuk empat.
Tumpukan Kertas menegak di Bawah
Idea di sini adalah bahawa bekas kandungan kami adalah helaian kertas atas dan lebih banyak helai ditumpuk di bawahnya dengan pinggirnya dipaparkan di bahagian bawah helaian atas.
Lihat Kesan Penumpukan Kertas Pen - Vertical by CSS-Tricks (@ css-tricks) di CodePen.
.paper ( background: #fff; box-shadow: /* The top layer shadow */ 0 1px 1px rgba(0,0,0,0.15), /* The second layer */ 0 10px 0 -5px #eee, /* The second layer shadow */ 0 10px 1px -4px rgba(0,0,0,0.15), /* The third layer */ 0 20px 0 -10px #eee, /* The third layer shadow */ 0 20px 1px -9px rgba(0,0,0,0.15); /* Padding for demo purposes */ padding: 30px; )
Tumpukan Kertas menegak di Atas
Ini adalah konsep yang sama dengan yang terakhir, tetapi dengan timbunan kertas yang terdapat di bahagian atas bekas dan bukannya di bawah. Satu-satunya perbezaan di sini ialah kita telah meletakkan semula box-shadow
sifat pada .paper
elemen menggunakan nombor negatif.
Lihat Kesan Penumpukan Kertas Pen - Bahagian Atas Vertikal oleh CSS-Tricks (@ css-tricks) di CodePen.
.paper ( background: #fff; box-shadow: /* The top layer shadow */ 0 -1px 1px rgba(0,0,0,0.15), /* The second layer */ 0 -10px 0 -5px #eee, /* The second layer shadow */ 0 -10px 1px -4px rgba(0,0,0,0.15), /* The third layer */ 0 -20px 0 -10px #eee, /* The third layer shadow */ 0 -20px 1px -9px rgba(0,0,0,0.15); /* Padding for demo purposes */ padding: 30px; )
Tumpukan Kertas Diagonal
Ini adalah kaedah yang sedikit berbeza, di mana kita menggunakan elemen pseudo ::before
dan ::after
untuk membuat helaian kertas tambahan, dan bukannya box-shadow
teknik yang digunakan dalam contoh sebelumnya.
Lihat Kesan Penumpukan Kertas Pen - Diagonal oleh CSS-Tricks (@ css-tricks) di CodePen.
/* Diagonal stacked paper effect */ .paper ( background-color: #fff; /* Need position to allow stacking of pseudo-elements */ position: relative; /* Padding for demo purposes */ padding: 30px; ) .paper, .paper::before, .paper::after ( /* Add shadow to distinguish sheets from one another */ box-shadow: 2px 1px 1px rgba(0,0,0,0.15); ) .paper::before, .paper::after ( content: ""; position: absolute; width: 100%; height: 100%; background-color: #eee; ) /* Second sheet of paper */ .paper::before ( left: 7px; top: 5px; z-index: -1; ) /* Third sheet of paper */ .paper::after ( left: 12px; top: 10px; z-index: -2; )
Tumpukan Kertas Tidak Teratur
Kita dapat menggegarkan kepingan kertas untuk membuat tampilan yang sengaja tidak kemas menggunakan teknik yang sama dengan elemen pseudo sebagai contoh terakhir, walaupun menggunakan transform
harta benda untuk memutar helaian kertas yang mendasari. Contoh ini menganggap penggunaan Autoprefixer atau awalan digunakan untuk transform
harta di mana sokongan penyemak imbas mungkin berkurang.
Lihat Kesan Penumpukan Kertas Pen - Messy by CSS-Tricks (@ css-tricks) di CodePen.
.paper ( background: #fff; padding: 30px; position: relative; ) .paper, .paper::before, .paper::after ( /* Styles to distinguish sheets from one another */ box-shadow: 1px 1px 1px rgba(0,0,0,0.25); border: 1px solid #bbb; ) .paper::before, .paper::after ( content: ""; position: absolute; height: 95%; width: 99%; background-color: #eee; ) .paper::before ( right: 15px; top: 0; transform: rotate(-1deg); z-index: -1; ) .paper::after ( top: 5px; right: -5px; transform: rotate(1deg); z-index: -2; )