HTML va CSS -dagi eng oddiy modal oyna. HTML5 va CSS3 -da modal oynani qanday yaratish kerak

Funktsiyasi bo'yicha oddiy modali oyna, bu butunlay CSS -da bajarilgan, bu erda siz saytga chaqiriladigan turli funktsiyalarni qo'yishingiz mumkin. Bu, ehtimol, prostata sozlamalari nuqtai nazaridan, balki o'rnatish uchun ham modal oynalarni tanlashda uchrashgan ko'p narsalardan biridir. Ammo asosiysi uning funktsionalligi, u boshqalardan kam bo'lmaydi. Bundan tashqari, sukut bo'yicha, u engil soyada qilingan, bu erda tugma yuqori o'ng burchakda, xoch shaklida o'rnatilgan.

Bu o'chirish funktsiyasiga o'tadi yoki shunchaki ramkani yo'q qiladi, bu erda ham bu kichik elementda ranglar palitrasini o'zgartirishga ta'sir ko'rsatiladi. Endi veb -ustasi uni saytga qo'yishi va unga statistik yoki ma'lumot beruvchi kabi turli toifalarni ko'rsatadigan tavsif yoki operatorlarni joylashtirishi mumkin.

Ammo haqiqat shundaki, agar sizda manbaning qorong'i uslubi bo'lsa, unda siz uslubni tezda o'zgartirishingiz, aniqrog'i, uni asl dizaynga moslashtirishingiz mumkin. HTML -langari bo'lgan havola ostida tugma bosilganda ishga tushadigan modalda sof CSS -ni yaratishning standart usullaridan biri. Tugmaning o'zi ko'rinishga ko'proq mos keladi, bu erda uslublar bitta sinfni olib tashlasa va nom qoladi, uni navigatsiya yoki boshqaruv paneliga qo'yish mumkin, bu erda asosiy funksionallik yoki sayt navigatsiyasi joylashgan.

Bu hamma narsa yaxshi ishlashini tekshirganda:

O'rnatishni boshlash:

Tugma bilan oyna



ZorNet.Ru - webmaster portali ×


Sayt uchun mavzu bo'yicha kontent bo'ladi.


CSS

Butksaton-satokavat (
displey: ichki blok;
matnni bezatish: yo'q;
o'ng chegara: 7 piksel;
chegara radiusi: 5 piksel;
to'ldirish: 7 piksel 9 piksel;
fon: # 199a36;
rang: # fbf7f7! muhim;
}

Anelumen (
displey: egiluvchan;
pozitsiya: sobit;
chapda: 0;
yuqori: -100%;
kengligi: 100%;
balandligi: 100%;
moslashtirish elementlari: markaz;
justify-content: markaz;
shaffoflik: 0;
-webkit-o'tish: yuqori 0s .7s, shaffoflik .7s 0s;
o'tish: yuqori 0s .7s, shaffoflik .7s 0s;
}

Anelumen: maqsad (
yuqori: 0;
shaffoflik: 1;
-webkit-o'tish: yo'q;
o'tish: yo'q;
}

Anelumen shakli (
kengligi: 100%;
maksimal kengligi: 530 piksel;
lavozim: nisbiy;
to'ldirish: 1,8 sm;
shaffoflik: 0;
fon rangi: oq;
-webkit-o'tish: shaffoflik .7s;
o'tish: shaffoflik .7s;
}

Anelumen.lowingnuska shakli (
fon: # f9f5f5;
chegara radiusi: 7 piksel;
to'ldirish tepasi: 8 piksel;
chegara: 3 pikselli qattiq #aaabad;
}

Anelumen.lowingnuska rasm h2 (
margin-top: 0;
pastki qismi-3 piksel;
pastki chegara: 1 pikselli qattiq # dcd7d7;
}

Anelumen: maqsadli raqam (
shaffoflik: 1;
}

Anelumen.lowingnuska .compatibg-ukastywise (
matnni bezatish: yo'q;
pozitsiya: mutlaq;
o'ng: 8 piksel;
yuqori: 0 piksel;
shrift o'lchami: 41 piksel;
}

Anelumennedismiseg (
chapda: 0;
yuqori: 0;
kengligi: 100%;
balandligi: 100%;
pozitsiya: sobit;
fon rangi: rgba (10, 10, 10, 0,87);
tarkibi: "";
kursor: standart;
ko'rish: yashirin;
-webkit-o'tish: barchasi .7s;
o'tish: hammasi .7s;
}

Anelumen: maqsadli .nedismiseg (
ko'rinishi: ko'rinadigan;
}


Bundan tashqari, bilishingiz kerakki, CSS uslubi va soxta sinf-bu CSS-ning ko'plab qiziqarli potentsialli ilovalaridan to'liq foydalanilmaganlardan biri.

Bu sahifaning URL manzili uning elementi identifikatoriga mos kelganda yoki uni boshqacha qilib aytganda, foydalanuvchi sahifadagi ma'lum bir elementga o'tganda ishga tushadi.

Hammaga salom! Ushbu qisqa qo'llanmada biz sof CSS -da oddiy, ammo kuchli modal yaratamiz. Va shu bilan birga biz flexbox kabi foydali narsani takrorlaymiz (va kim uchun ochamiz). Bunday holda, biz shunchaki bosish bilan ochiladigan modal oynani emas, balki ekranning markazida aniq joylashtirilgan oynani yaratamiz. Bir vaqtlar buni faqat javascript yordamida amalga oshirish mumkin edi, lekin vaqt o'tib ketadi va endi buni 4 satr kod bilan qilish mumkin.

Modali oynani ochish

Bu modal oynaning hammasi xuddi ikki qatlamdan iborat - birinchi qavati, o'z sinfiga ega ModalWindow, modal atrofidagi hamma joyni qoraytiradi va oynaning mazmunini ekranning o'rtasiga tekislaydi. Ikkinchi qavat - sinf Modal_Body- to'g'ridan -to'g'ri modal oynaning mazmunini o'z ichiga oladi.

Keling, ushbu belgilash uchun CSS yarataylik:

Modal (pozitsiya: sobit; ko'rsatish: yo'q; yuqori: 0; o'ng: 0; pastda: 0; chapda: 0; z-indeks: 0; fon: rgba (0,0,0,0.7); ko'rsatgich hodisalari: yo'q ;) .Modal: maqsad (ko'rsatish: moslashuvchan; ko'rsatgich hodisalari: avtomatik;) .Modal_Body (pozitsiya: nisbiy; z-indeks: 2; ko'rsatish: blok; chegara: avtomatik; to'ldirish: 15 piksel; fon: #FFF;). ModalFull (pozitsiya: mutlaq; displey: blok; z-indeks: 0; kenglik: 100%; balandlik: 100%;)

Keling, modal oynaning ishini ko'rib chiqaylik va u qanday ishlashini aniqlaylik.

Ko'rib turganimizdek, "Modal oynani ochish" tugmachasini bosganingizda, butun oyna soyali bo'lib qoladi va aynan o'rtada oq modali oyna paydo bo'ladi. Keling, hozircha bu haqda to'xtalib, o'zimizni nazariyaga bag'ishlaymiz.

Biz JavaScript-ni ishlatmaslikka rozi bo'lganimizdan va uni elementlarga bosishlarni kuzatib borish uchun ishlata olmasligimizdan, biz buni CSS-ning psevdo-klassi va xashli ankraj havolasi yordamida osonlikcha bajarishimiz mumkin (berilgan sahifadagi elementga ishora qilish uchun) va id havola ko'rsatgichiga teng keladigan qiymat bilan. Bizning misolimizga qarang: href havolalar va id modal oynaning asosiy idishi bir xil ma'noga ega - ModalWindow... Bu juda muhim, chunki brauzer qaysi elementlar bir -biri bilan o'zaro aloqada bo'lishini tushunishi kerak.

Bizning holatda, modal oynaning umumiy konteyneri yashiringan va shunga mos ravishda modal oynaning butun tarkibi yashiringan. Lekin havolani bosganingizda, element soxta sinfga ega bo'ladi : maqsad va shunga mos ravishda paydo bo'ladi. CSS kodiga qarang - mulk ko'rsatish dan o'zgaradi hech kim yoqilgan egilmoq... E'tibor bering, bu moslashuvchan, chunki u bilan biz tekislashimiz mumkin Modal_Body aniq ekran markazida. Biz boshqa barcha uslublarni birdaniga tayinladik.

Aytgancha, agar siz ekranning butun yuzasi qanday tekislanganini tushunmasangiz, men sizga aytaman - hammasi quyidagi 4 qatorda:

Yuqori: 0; o'ngda: 0; pastki: 0; chapda: 0;

Biz bir vaqtning o'zida o'ng, chap, yuqori va pastdagi nol pikselda bo'lishi kerakligini ko'rsatdik. Buning o'rniga, masalan, quyidagi qurilishdan foydalanishingiz mumkin:

Kengligi: 100%; balandligi: 100 Vt;

Bu erda biz ekranning 100% ga teng kengligini belgilaymiz, lekin balandlikdan foydalanib sozlash yaxshidir ko'rish maydonining balandligi- brauzer oynasining balandligi. Men o'z versiyamga e'tibor qarataman.

Yana bitta muhim nuance Ning z-index xususiyatining qiymati Modali va Modal_Body... Ular majburiy bo'lishi kerak va Modal_Body u kamida bitta katta qiymatga ega bo'lishi kerak, aks holda modal oynaning mazmuni bo'lmaydi - havolalar va tugmachalarni bosish imkonsiz bo'ladi. Va agar aylantirishdan mamnun bo'lsangiz, bu ham ishlamaydi, chunki bitta element boshqasiga to'g'ri keladi.

Keling, o'z asarimizni yaratishda davom etamiz. Bosilganda modal oyna paydo bo'ladi, lekin biz uni yopolmaymiz. Uni yopish uchun tugma qo'shamiz:

Aslida, u bekor qilinadi : maqsad bizning modal oynamiz uchun va keyin faqat boshlang'ich pozitsiyasini oladi - u ko'zdan yashiriladi. Ammo bu havolada qandaydir noziklik bor - uni bosganingizda, brauzer bunday elementni topishga urinadi, lekin u muvaffaqiyatsiz bo'ladi va sahifani boshidanoq siljitadi. Bu xulq -atvor modallarni ishlab chiqarishga bo'lgan yondashuvning kichik kamchiliklaridan biridir, lekin uni hal qilish mumkin.

Buning uchun atribut href biz o'zgartiradigan havola orqali «#» yoqilgan "#ModalWindowClose" va oynani ochgan havola tugmasi uchun atributni qo'shing id bir xil qiymat bilan. Siz atributdan ham foydalanishingiz mumkin ism, lekin HTML5 -da langarni aniqlash yaxshiroq va siz atributni ko'rsatishingiz kerak id.

Modali oynani ochish

Endi bosilganda brauzer tugmachaga qaytadi. Haqiqat uchun aytmoqchimanki, bu langar ekranning yuqori chetida joylashgan bo'ladi. Ammo, agar ochilish tugmasi yuqori yoki pastki qismda bo'lsa, bu muammo tekislanadi. Va agar sarlavha aniq pozitsiyaga ega bo'lsa, umuman yaxshi bo'ladi - masalan, qayta qo'ng'iroq qilish yoki oldindan buyurtma berish / maslahat berish uchun, deraza yopilganda yaxshi ishlaydi.

Mana biz olgan narsalarga misol:

Siz konteynerni biroz o'zgartirishingiz mumkin Modal_Body- bu o'lcham cheklovlari (balandligi va kengligi kengaymasligi uchun). Va yana bir kichik nuance - kodni, agar iloji bo'lsa, yopilish yorlig'idan oldin modali oyna bilan joylashtirishni tavsiya qilaman

.

Shu tarzda modal oynani tezda yaratish mumkin. Biz yozgan bu kodni kerak bo'lganda kerakli uslublarni qo'shib, asosiy shaklda ishlatish mumkin.

Umid qilamanki, mening darsligim siz uchun foydali bo'ldi. Xayrli kun va Internet orollarida yana ko'rishguncha!

Muloqot oynasi - bu qisqa xabar yoki ma'lumotni ko'rsatishning ajoyib usuli. Modal bugungi kunda veb -dizaynning juda mashhur elementidir. Agar siz sahifaga maxsus tarkib qo'shsangiz, uni modal oynaga joylashtirish yaxshiroqdir:

Ilgari, u JavaScript yordamida yaratilgan bu lahza eng yaxshi amaliyot deb hisoblanmaydi. Ammo HTML5 va CSS3 modallarni yaratishni osonlashtiradi. Ushbu qo'llanmada biz CSS3 o'tishlari, shaffoflik, ko'rsatgich hodisasi va fon rangidan foydalanamiz.

Ushbu uslub sof CSS bilan yaratilgan. U sezgir bo'ladi va smartfon va planshetlarda yaxshi ishlashi kerak. Va shuningdek, katta, yuqori aniqlikdagi ekranlarda.

CSS modali oynasini yaratish

Biz qilishimiz kerak bo'lgan birinchi narsa oddiy HTML kodini yaratishdir:

Modalni oching!

Bizda modal oynani va modal-one xashtagini ochishni taklif qiladigan oddiy havola mavjud. Biz bu erda barcha uslublarni sinflar yordamida belgilaymiz, shuning uchun identifikator modal maydonni yaratish uchun ilgak sifatida ishlatiladi.

Esda tutingki, biz jQuery modali emas, faqat CSS -dan foydalanamiz, shuning uchun biz soxta selektordan foydalanamiz. : maqsaddan oldin”.

Keyin modal oynaning barcha tarkibini saqlashingiz kerak. Div ichida biz giperhavolani joylashtiramiz. U biz chiqaradigan konteynerni yopadi CSS yordamida... Shundan so'ng siz matnning bir nechta paragraflari bilan sarlavha qo'yishingiz mumkin. Bizning HTML formatlashimiz endi shunday bo'ladi:

Uslublarni sozlash

Endi bizda div bilan o'ralgan giperhavola bor. Siz konteynerni yanada amaliy qilish uchun uni uslublashni boshlashingiz mumkin. Birinchidan, CSS modal oynasi uchun modal sinf yarataylik. Buning uchun biz: soxta elementdan oldin:

Modali: oldin (kontent: ""; ko'rsatish: yo'q; fon: rgba (0, 0, 0, 0,6); pozitsiya: sobit; tepada: 0; chapda: 0; o'ngda: 0; pastda: 0; z-indeks: 10;) .modal: maqsad: oldin (ko'rsatish: blok;)

Biz modali oyna yarating buning uchun qat'iy pozitsiyani o'rnatish orqali. Foydalanuvchi sahifani pastga aylantirganda, u pastga siljiydi.

Bundan tashqari, biz yuqori, o'ng, pastki va chap qirralarni nolga o'rnatdik, shunda qorong'i fon butun ekranni qoplaydi. Endi biz .modal-dialog uchun fonni, chegarani, radiusni, shuningdek, sobit joylashishni o'rnatishimiz kerak. Bizning CSS kodimiz shunday bo'ladi:

Modali muloqot kenglik: 360px; -moz-o'tish: -moz-o'tish 0,3s-yengillik;

Modal: maqsadli .modal-dialog (-webkit-transform: translate (0, 0); -ms-transform: translate (0, 0); transform: translate (0, 0); top: 20%;)

Modalni chiroyli qilish uchun yana bir nechta uslublar ishlatiladi:

tanasi (rang: # 333; shrift-oilasi: "Helvetica", arial; balandligi: 80em;). o'rash (to'ldirish: 40px; matnni tekislash: o'rtada;) soat pastki: 40 piksel; chegara: 0; chegara tepasi: 1 piksel qattiq #aaa;) h1 (shrift o'lchami: 30 piksel; chekka pastki: 40 piksel;) p (chekka-pastki: 20 piksel;) .modal korpus (to'ldirish: 20 piksel) ;) .modal-sarlavha, .modal-altbilgi (to'ldirish: 10px 20px;) .modal-sarlavha (chegara-pastki: #eee qattiq 1px;) .modal-sarlavha h2 (shrift o'lchami: 20px;) .modal-altbilgi (chegara-tepa: #eee qattiq 1px; matnni tekislash: o'ng;)

Endi biz HTML modalini ishlab chiqdik va uni funksional qilib qo'ydik, faqat pastki o'ng burchakda tugma yaratish kifoya. CSS kodi:

Btn (fon: # 428bca; chegara: # 357ebd qattiq 1 piksel; chegara radiusi: 3 piksel; rang: #fff; displey: inline-blok; shrift o'lchami: 14 piksel; to'ldirish: 8 piksel 15 piksel; matnli bezak: yo'q; matn- tekislash: markaz; min-kenglik: 60 piksel; pozitsiya: nisbiy; o'tish: rang .1s osonlik; / * tepa: 40em; * /) .btn: hover (fon: # 357ebd;) .btn.btn-big (shrift- hajmi: 18 piksel; to'ldirish: 15 piksel 20 piksel; min kengligi: 100 piksel;) .btn-close (rang: #aaa; shrift o'lchami: 30 piksel; matn bezatish: yo'q; pozitsiya: mutlaq; o'ng: 5 piksel; tepa: 0; ) .btn-close: hover (rang: # 919191;) / * yuqoriga o'tishni to'xtatish uchun qo'shing * / #close (ko'rsatish: yo'q;)

Yaratilgan modal oynaning afzalliklari nimada?

Modalimizning asosiy ustunligi shundaki, u faqat HTML5 va CSS3 yordamida yaratilgan. Nima uchun bu juda muhim? Javascript modal oynasi Hatto boshlang'ich ham yaratishi mumkin bo'lgan narsadir. Internetda yuklab olish mumkin bo'lgan ko'plab tayyor echimlar mavjud. Xo'sh, nega biz faqat HTML5 va CSS3 -ni JavaScriptsiz bajarishni xohlaymiz?

Masalan, JavaScript -ni qo'llab -quvvatlamaydigan foydalanuvchilar modali oynadan foydalanishlari uchun. Statistik ma'lumotlar shuni ko'rsatadiki, dunyo bo'ylab foydalanuvchilarning 2% dan ko'prog'i JavaScript -ni ishlatmaydi.

Biz animatsiyani yaratish uchun CSS -ning bir necha satridan samarali foydalanganmiz. Agar xohlasangiz JavaScript kutubxonasi animatsiyalar, biz qanchalik kam kod ishlatganligimiz sizni hayratda qoldiradi. Buning yana bir afzalligi bor - toza kod.

Biz barcha animatsiyani o'z ichiga olgan divni amalga oshirdik va u faqat bir necha satr koddan iborat. Bu kodni tozalovchi qiladi va bu yechim sizga divni JavaScript -dagi kod o'zgarishi haqida xavotirlanmasdan, xohlaganingizcha o'zgartirish yoki ko'chirish imkonini beradi.

Nihoyat, HTML5 va CSS3 - bu kelajak. Biz hammamiz ularni loyihalarimizda ishlatishga harakat qilamiz. Ularning yordami bilan siz toza kodni olasiz, JavaScript kutubxonalari haqida xavotirlanishga hojat yo'q. HTML5 va CSS3 uzoq vaqt biz bilan, shuning uchun ularni ishlatmaslikka hech qanday sabab yo'q.

Xulosa

Endi siz HTML5 va CSS3 yordamida kirish yoki ro'yxatdan o'tish shakllari, reklama birliklari va boshqalar uchun ishlatilishi mumkin bo'lgan oddiy modal yaratishingiz mumkin. Bundan tashqari, siz nima uchun JavaScript o'rniga HTML5 va CSS3 -dan foydalanish kerakligini bilib oldingiz va saytlar modallardan qanday foydalanishi haqidagi ba'zi misollarni ko'rdingiz.

Maqola tarjimasi " Javascriptsiz CSS modal oynasini qanday qilish kerak"Do'st loyiha jamoasi tomonidan tayyorlangan.

Ushbu qo'llanmada biz HTML5 va CSS3 yordamida modal oynani yaratishni o'rganamiz. Biz bu qo'llanmada JSdan foydalanmaymiz, faqat CSS3. Modalar forma uchun ishlatilishi mumkin fikr -mulohaza, fotosuratlar va videolar uchun va undan foydalanish uchun hali ko'p imkoniyatlar mavjud.

Modal oynamizni yasashni boshlaylik.

Qadam 1. HTML formatlash

Biz qilishimiz kerak bo'lgan birinchi narsa - HTML formatlash, ya'ni. deraza ochiladigan havola qiling va derazamizning skeletini yasang. Buning uchun quyidagi kodni yozing:

Qadam 2. Modal oynaning mazmuni

Endi derazamizning tarkibini qo'shamiz. Keling, sarlavha va matnni tuzib, hammasini tegga joylashtiraylik

va kodni kiriting ellips o'rniga... Shuningdek, siz bizning oynamizni yopadigan va uni beradigan havolani kiritishingiz kerak sinf = "yopish"... Sizning kodingiz shunday ko'rinishi kerak:

REDSTAR LOYIHASI

REDSTAR- sizni anchadan beri qiziqtirgan masalalarga bag'ishlangan loyiha. Ushbu loyihada turli mavzulardagi bepul darslar va maqolalar mavjud. Mavzular juda xilma -xil, oddiydan tortib to Windows o'rnatish va saytlarning rivojlanishi bilan yakunlanadi.

3 -qadam. Uslublar

Endi biz oynamiz uchun uslublarni yozishni boshlaymiz. Bu bosqichda biz oynamizni ko'rinmas qilib qo'yamiz. U faqat havolani bosish orqali paydo bo'ladi. Buning uchun biz o'z sinfimiz uchun uslublar yozamiz. modalDialog:

ModalDialog (joylashuvi: sobit; shrift oilasi: Arial, Helvetica, sans-serif; yuqori: 0; o'ng: 0; pastda: 0; chapda: 0; fon: rgba (0,0,0,0.8); z-indeks : 99999; noaniqlik: 0;

Qadam 4. Funktsionallik va ko'rish

Ushbu bosqichda biz oynamiz allaqachon ishlayotganiga ishonch hosil qilamiz. Buning uchun sinfimizga yana bir nechta uslub qo'shing. modalDialog:

ModalDialog: maqsad (shaffoflik: 1; ko'rsatgich hodisalari: avtomatik; displey: blok;). ; fon: #fff; fon: -moz-chiziqli-gradyan (#fff, #b8ecfb); fon: -webkit-chiziqli-gradyan (#fff, #b8ecfb); fon: -o-chiziqli-gradyan (#fff, # b8ecfb);)

Ushbu bosqichda siz allaqachon oynangizni ko'rishingiz mumkin, u allaqachon ishlamoqda. Ammo, tugma yaqin unchalik chiroyli ko'rinmaydi.

Endi biz o'z sinfimizga uslublarni qo'shishimiz kerak yaqin.

Qadam 5. yopish tugmasini qilish

Bu bosqichda biz yaxshilanamiz tashqi ko'rinish bizning oynamizni yopadigan tugma. Buning uchun biz o'z sinfimiz uchun uslublar yozamiz. yaqin:

Yopish (fon: # 606061; rang: #FFFFFF; chiziq balandligi: 25 piksel; pozitsiya: mutlaq; o'ng: -12 piksel; matnni tekislash: markaz; tepa: -10 piksel; kenglik: 24 piksel; matn bezatish: yo'q; shrift- vazn: jasur; 3px # 000; quti soyasi: 1px 1px 3px # 000;) .yopish: hover (fon: # 860015;)

Xo'sh, endi bizning tugma mo'ljallangan tarzda ko'rinadi. Bu sizga bir xil ko'rinishi kerak:

Bu darsni yakunlaydi. E'tibor uchun rahmat! Sizga qulay bo'lishi uchun men demo versiyasini qo'shdim va manba fayllari... Agar biror narsa aniq bo'lmasa, manba fayllarini yuklab oling.

Dars siz uchun sayt jamoasi tomonidan tayyorlangan REDSTAR.

Modalar - bu veb -ustaning arsenalida tez -tez ishlatiladigan vosita. Bu ro'yxatga olish shakllari, reklama birliklari, xabarlar va boshqalarni ko'rsatish kabi ko'plab vazifalarni hal qilish uchun juda mos keladi.

Lekin muhim o'rin egallaganiga qaramay axborot yordami loyiha, modallar odatda JavaScript -da amalga oshiriladi, bu funksionallikni kengaytirganda yoki orqaga moslikni ta'minlashda muammo tug'dirishi mumkin.

HTML5 va CSS3 sizga modallarni juda oson yaratishga imkon beradi.

HTML formatlash

Modalni yaratishda birinchi qadam oddiy va samarali belgilashdir:

Modali oynani ochish

Div elementi ichida modalning mazmuni joylashtirilgan. Shuningdek, siz oynani yopish uchun havolani tashkil qilishingiz kerak. Masalan, oddiy sarlavha va bir nechta paragraflarni joylashtiraylik. Bizning misolimiz uchun to'liq belgi quyidagicha bo'ladi:

Modali oynani ochish

X

Modali oyna

CSS3 yordamida yaratilishi mumkin bo'lgan oddiy modal oynaga misol.

Xabarlarni namoyish qilishdan tortib, ro'yxatdan o'tish shakligacha keng doirada foydalanish mumkin.

Uslublar

Sinf yarating modalDialog va biz tashqi ko'rinishini shakllantira boshlaymiz:

ModalDialog (joylashuvi: sobit; shrift oilasi: Arial, Helvetica, sans-serif; yuqori: 0; o'ng: 0; pastda: 0; chapda: 0; fon: rgba (0,0,0,0.8); z-indeks -99999;

Bizning oynamiz aniq pozitsiyaga ega bo'ladi, ya'ni qachon sahifani aylantirsangiz, u pastga siljiydi ochiq oyna... Shuningdek, bizning qora fonimiz butun ekranni to'ldirish uchun kengayadi.

Orqa fonda biroz shaffoflik bo'ladi, shuningdek, xususiyat yordamida boshqa elementlarning ustiga joylashtiriladi z-indeks.

Nihoyat, biz modal oynamizni ko'rsatish uchun o'tishni o'rnatdik va uni faol bo'lmagan holatda yashirdik.

Balki siz mulkni bilmaysiz ko'rsatgich hodisalari, lekin bu elementlarning sichqonchani bosishiga qanday munosabatda bo'lishini boshqarishga imkon beradi. Biz qiymatni sinf uchun qiymatiga o'rnatamiz modalDialog, chunki soxta sinf faol bo'lganda, havola sichqonchani bosishiga javob bermasligi kerak ": Maqsad".

Endi biz soxta sinfni qo'shamiz : maqsad va modal oyna uchun uslublar.

ModalDialog: maqsad (displey: blok; ko'rsatgich hodisalari: avtomatik;). ModalDialog> div (kenglik: 400 piksel; pozitsiya: nisbiy; chegara: 10% avtomatik; to'ldirish: 5 piksel 20 piksel 13 piksel 20 piksel; chegara radiusi: 10 piksel; fon: # fff; fon: -moz-chiziqli-gradyan (#fff, # 999); fon: -webkit-chiziqli-gradyan (#fff, # 999); fon: -o-chiziqli-gradyan (#fff, # 999); )

Psevdo sinf nishon elementning ko'rsatish rejimini o'zgartiradi, shuning uchun havola bosilganda bizning modalimiz ko'rsatiladi. Shuningdek, biz mulk qiymatini o'zgartiramiz ko'rsatgich hodisalari.

Biz modaning kengligini va sahifadagi pozitsiyani aniqlaymiz. Shuningdek, fon va yumaloq burchaklar uchun gradientni aniqlang.

Derazani yop

Endi biz oynani yopish funksiyasini amalga oshirishimiz kerak. Biz tugma ko'rinishini shakllantiramiz:

Yopish (fon: # 606061; rang: #FFFFFF; chiziq balandligi: 25 piksel; pozitsiya: mutlaq; o'ng: -12 piksel; matnni tekislash: markaz; tepa: -10 piksel; kenglik: 24 piksel; matn bezatish: yo'q; shrift- vazn: jasur; 3px # 000; quti-soya: 1px 1px 3px # 000;) .yopish: hover (fon: # 00d9ff;)

Bizning tugmachamiz uchun biz fon va matn o'rnini o'rnatamiz. Keyin biz tugmachani joylashtiramiz, uni ramkaning yaxlitlash xususiyati bilan yumaloq qilamiz va nozik soyani hosil qilamiz. Sichqoncha kursorini tugma ustiga olib borganingizda, biz fon rangini o'zgartiramiz.

Maqola sizga yoqdimi? Do'stlar bilan bo'lishish uchun: