Jokaisella verkkosivustolla on oltava palautelomake, joten ennemmin tai myöhemmin jokainen meistä ajattelee sellaisen kehittämistä. Internetissä on melko paljon vaihtoehtoja, jotkut käyttävät suosittuja laajennuksia, jotkut omaa henkilökohtaista kehitystä, mutta useimmat etsivät valmiita ratkaisuja. Joka tapauksessa palautelomakkeemme sivustolle tulee olemaan toimiva ja toimiva, ja puhutaan tästä kaikesta järjestyksessä.

HTML

Joten aloitetaan, kuten aina, tavallisella mallilla - html. Ensin tarvitsemme lomakkeen, jossa on useita kenttiä. Selvyyden ja kaikkien lomakkeiden standardin vuoksi otamme 3 kenttää. Nuo. tämä on nimi, sähköpostiosoite ja puhelinnumero.

Jokaisella syötteellä on oma yksilöllinen nimi, jota tarvitsemme myöhemmin viestien lähettämiseen. Voit myös vapaasti lisätä omia kenttiäsi ja ei vain syöttää, vaan myös valita tekstialueen. Muista antaa jokaiselle omat nimensä, joita käytämme lähettäessämme tietoja sähköpostitse. Lisäsin jokaiseen kenttään mukavuuden vuoksi pakollisen attribuutin, jonka ansiosta selain ei salli käyttäjän lähettää tyhjiä arvoja ja ilmoittaa heille niiden täyttämisen tarpeesta.

CSS

Kun lomake on valmis, voit muuttaa sitä hieman. Kaikki täällä riippuu myös tarpeistasi ja fantasioistasi. Selvyyden vuoksi piirtelin kullekin elementille muutaman tyylin, jotta kaikki ei näyttäisi niin tasaiselta. Mutta jos olet laiska tai et tiedä miten se tehdään, voit käyttää vaihtoehtoani:

Muoto( max-leveys: 400 pikseliä; leveys: 100 %; marginaali: 0 auto; ) input( laatikon koko: border-box; näyttö: lohko; reunus: ei mitään; box-shadow: upotettu 0px 0px 4px 1px rgba(0, 0, 0, 0,11); täyte: 10px 20px; leveys: 100%; marginaali: 10px 0; ääriviivat: ei mitään; ) input( tausta: punainen; reunus: ei mitään; laatikkovarjo: 0px 2px 0 1px #C50909; reunus- säde: 5px; väri: valkoinen; tekstin muunnos: isot kirjaimet; fontin paino: 600; leveys: 200px; kohdistin: osoitin; siirtymä: 0,3 s; ) input:hover( tausta: musta; box-shadow: 0px 2px 0 1px musta ;)

Asiakasosa

Täällä kannattaa ymmärtää tarkemmin, tai pikemminkin valita sopiva vaihtoehto itsellesi. Viestien lähettämiseen sähköpostitse meidän on käytettävä php-kieltä, ts. Luo erillinen tiedosto, johon siirrämme kaikki nämä tiedot. Mutta emme harkitse tätä menetelmää tässä, koska se on paljon kauniimpaa, kun kaikki tapahtuu lataamatta sivua uudelleen. Joten tarkastelemme tietojen lähettämistä ajaxin kautta.

Jos haluat tehdä kaiken vanhanaikaisesti, sinun on säädettävä hieman ylintä html:ää ja asetettava lomakkeen metodi-attribuutin arvo (post or get). Kaikki riippuu siitä, kuinka haluat siirtää tietoja lomakkeesta. Älä myöskään unohda kirjoittaa toimintoa, joka osoittaa polun php-tiedostoon.

Ja käytämme kehittyneempää menetelmää ja lähetämme tiedot lataamatta sivua uudelleen, ja kun saamme vastauksen palvelimelta, annamme käyttäjälle viestin onnistuneesta toiminnasta tai virheestä. Tarvitsemme kuitenkin myös kaksi tiedostoa, esimerkiksi contact.php ja custom.js.

Ensinnäkin, älä unohda yhdistää Jquery-kirjastoa, sen avulla vähennämme koodia useita kertoja ja voimme helposti suorittaa mitä tahansa toimintoja valmiilla ratkaisuilla.

$(.form").submit(function() ( var str = $(this).serialize(); $.ajax(( type: "POST", url: "contact.php", data: str, menestys : function(msg) ( if(msg == "ok") ( alert("Viesti lähetetty"); ) else ( alert("Virhe! Olet ehkä täyttänyt kentät väärin."); ) ) )); return väärä; ) );

Ymmärretään nyt toimintasuunnitelma ja miksi tarvitsemme kaikkia näitä kirjastoja ja tiedostoja. Kun käyttäjä klikkaa Lähetä-painiketta, meillä on lähetystapahtuma, jonka kirjoitamme custom.js:ssä ja jonka perusteella saamme kaikki tiedot lomakkeesta ja välitämme ne contact.php-tiedostoon. Täällä tarkistamme vielä kerran, ovatko kentämme tyhjät (jotta vältytään toiselta roskapostilta), lähetämme viestin sähköpostitse ja ilmoitamme käyttäjälle tuloksista, jotka lähetetään vastauksena custom.js:lle.

If (trim($_POST["mfbPhone"]) == "") ( echo "false"; ) else ( $txtname = trim($_POST["mfbName"]); $txtemail = trim($_POST["mfbMail" "]); $txtphone = trim($_POST["mfbPhone"]); // keneltä $fromMail = " [sähköposti suojattu]"; // Kirjoita sähköpostiosoitteesi tähän $emailTo = " [sähköposti suojattu]"; $subject = "Palaute"; $subject = "=?utf-8?b?". base64_encode($subject) ."?="; $headers = "Lähettäjä: Esimerkkilomake\n"; $headers . = "Sisältötyyppi: teksti/plain; charset="utf-8"\r\n"; $headers .= "MIME-versio: 1.0\r\n"; $headers .= "Päivämäärä: ". date("D, d M Y h:i:s O") ."\r\n"; // kirjaimen runko $body = "Sain kirjeen sivustolta ".$site." \n\nNimi: ".$txtname."\nPuhelin: ".$txtphone."\n-mail: ".$txtemail."\nViesti: ".$txtmessage; mail($emailTo, $subject, $body, $headers); echo "ok";)

Tämä on yksinkertaisin esimerkki yhteydenottolomakkeen toiminnasta. On monia vaihtoehtoja kuinka muokata tarkistustiedostoa PHP:ssä, luoda omia luokkia jne. Mutta tehtävämme oli luoda yksinkertainen ja toimiva esimerkki, jota voit käyttää verkkosivustollasi.

demo

tiedostot

Valmiit laajennukset

Koska olet WordPress-blogissa, olet luultavasti valmis ja innokas käyttämään kaikenlaisia ​​laajennuksia, varsinkin jos olet täydellinen ohjelmoinnin ja asettelun asiantuntija. En syytä sinua tästä, ja voin jopa esittää yhden niistä huomiosi selvyyden vuoksi. Tämän kappaleen tarkoitus ei ole suositus, vaan vain esimerkki, koska olen käyttänyt Contact Form 7 -laajennusta useissa projekteissa.

Se on erittäin helppo konfiguroida ja toimii lähes aina virheettömästi. Jos haluat luoda oman ainutlaatuisen mallisi, voit tehdä sen. Sinun tarvitsee vain lisätä tarvittavat kentät rakentajaan, kääntää ja muuttaa ilmoitukset virheistä ja onnistuneesta lähetyksestä omalla tavallasi, ja olet valmis. Kopioi seuraavaksi lyhytkoodi ja liitä se haluamaasi paikkaan lomakkeessa.


Minulla ei ole koskaan ollut ongelmia laajennuksen kanssa, ja jos tarvitset nopean ja valmiin ratkaisun, niin tämä on se. Jos sinulla on omat vaatimukset lomakkeelle toiminnallisuuden ja suunnittelun suhteen, on parempi käyttää ensimmäistä vaihtoehtoa, joka vaatii tietoa tällä alalla.

Hei rakkaat ystävät ja blogivieraat! Verkkosivustopalaute on yksi merkittävimmistä ominaisuuksista, jonka avulla bloggaaja voi kommunikoida vierailijoidensa kanssa. Mutta on yksi saalis - lisäosat, jotka näyttävät palautetta sivustosta, painavat paljon!

Olen jo jonkin aikaa pyrkinyt tekemään blogistani kevyemmän ja päättänyt päästä eroon tarpeettomista laajennuksista, jotka painavat sitä painollaan ja estävät sivujen nopean latautumisen. Ja ensinnäkin, valintani putosi palautelomakkeeseen, tai pikemminkin liitännäiseen, joka näytti sen verkkosivustollani "Contact Form 7", ja se tarvitsi myös toisen laajennuksen, joka näytti captcha "reCaptcha". Näin päätin päästä eroon kahdesta melko merkittävästä laajennuksesta kerralla käyttämällä palautelomaketta, joka ei vaadi lisäosia ja on helppo asentaa sivustolle. Nyt kerron sinulle siitä ja tietysti annan sinun ladata tiedostot, jotta voit luoda samanlaista palautetta sivustollesi...

Ja niin, kun vihdoin poistin sivustoltani palautelomakkeen luomiseen tarvittavat lisäosat, aloin luoda helppoa ja luotettavaa palautelomaketta ilman lisäosia. Ja tämän sain:

Voit tarkastella ja tarkistaa sivustolle antamani palautelomakkeen toimivuuden " " -sivulla. Kirjoita sivuilla olevaan yhteydenottolomakkeelleni, niin vastaan ​​sinulle!

Siirrytään nyt tärkeimpään asiaan ja luodaan oma palaute sivustolle, liitännäisistä riippumatta...

Annamme palautetta sivustosta ilman lisäosia!

Tarvitsemme tähän kaikki: blogisivustoni, jossa on artikkeli "Palaute sivustolle", tekstieditori ja tietysti halusi luoda sivustolle oma yhteydenottolomake helpottamaan tarpeettomien ja raskaiden liitännäisten poistamista!

Tässä on sivuston palautelomakkeen HTML-koodi, jonka voit liittää sivustollesi tai blogiisi minne tahansa, minulle tämä on yhteydenottosivu:

Palautelomake

Mikä sinun nimesi on

Sähköposti

Viestin aihe

Lähetä viesti

Huomaa joitain tärkeitä asioita, jotka sinun tulee tehdä tässä koodissa:

  • Työskentele koodin kanssa vain Notepad++ -tekstieditorissa
  • Korjaa ensimmäisen koodirivin polku mail.php-tiedostoon, josta kerron sinulle hieman myöhemmin
  • Sinun on ladattava tämä tiedosto isännöintiisi sivustomoottorin juurikansioon! Mutta tarkista ensin, oletko korjannut sen vai et!

    Rivillä, jolle on kirjoitettu teksti "SIJOITUSSÄHKÖPOSTIOSOITE"! ", sinun on korjattava se sähköpostiosoitteeseesi, joka on hosting-palvelussasi. Jos sinulla ei ole sähköpostitiliä hosting-palvelussasi, muista luoda sellainen. Se ei ole vaikeaa!

    Nyt sinun on yhdistettävä komentosarja, joka yhdistää sivuston jQuery-kirjaston, jotta sivuston palautejärjestelmämme toimisi oikein. Tarkista ensin verkkosivustoltasi, ehkä tämä komentosarja on jo asennettu, jos et tiedä kuinka tehdä tämä, kysy isännöinnin tueksi.

    Tässä on käsikirjoitus:

    Tai voit lisätä tämän toiminnon WordPress functions.php-tiedostoosi:

    Funktio my_jquery() ( wp_deregister_script("jquery"); wp_register_script("jquery", "http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"); wp_enqueue_script("jquery" ;)

    Se korvaa skriptin ja sisältää myös jQuery-kirjaston WordPress-sivustolla.

    Nyt yhdistämme verkkosivuillamme skriptin, joka toimii yhdessä mail.php-tiedoston kanssa ja lähettää kirjeesi. Tätä varten meidän on luotava js-tiedosto, kuten contact.js, ja lähetettävä se verkkosivustollesi kansiossa, jossa on aktiivisen teemasi skriptit, jota kutsutaan js:ksi. Jos sinulla ei ole sitä verkkosivustollasi, luo se!

    Tässä on käsikirjoitus:

    JQuery(document).ready(function($) ( $("#contact").submit(function() ( var str = $(this).serialize(); $.ajax(( tyyppi: "POST", url : "SINUN DOMAIN/wp-content/themes/YOUR THEME/mail.php", data: str, menestys: function(msg) ( if(msg == "OK") ( tulos = "Viesti lähetetty"; $(" #fields").hide(); ) else (tulos = msg;) $("#note").html(tulos); ) )); return false; )); ));

    Melkein valmis! Nyt meidän tarvitsee vain ladata tyylit CSS-tiedostoosi, joka vastaa sivuston teeman tyyleistä, isännöintiimme. Jos näin ei tehdä, äskettäin luomamme palaute sivustosta ei ole kaunista ja yksiväristä.

    Tässä on sivuston palautelomakkeen tyylikoodi:

    Lomake#yhteystieto ( reunus:1px kiinteä #e5e5e5; täyte:10px; tausta:#e9ffd0; reunuksen säde:5px; ) #contact label ( font-size: 14px; ) #contact input:required:valid ( box-shadow: 0 0 3px #BCEF89; reunuksen väri: #BCEF89!tärkeää; tausta: #fff url(images/valid.png) ei toistoa 98 % center; ) #contact textarea:required:valid ( ruutuvarjo: 0 0 3px #BCEF89; reunuksen väri: #BCEF89!tärkeää; ) #contact input:focus:invalid ( box-hadow: 0 0 3px #FFDF97; reunuksen väri: #FFDF97!tärkeää; tausta: #ffff url(images/invalid. png) ei toistoa 98 % keskellä; ) #contact textarea:focus:invalid ( ruutuvarjo: 0 0 3px #FFDF97; reunuksen väri: #FFDF97!tärkeää; ) .err ( reunus: 1px kiinteä #ff8c00; täyte: 10px; tausta: #FFDF97; tekstin tasaus: vasemmalle; reunuksen säde: 3px; ) .ok (reunus: 1px #BCEF89 kiinteä; marginaali-ala: 15px; täyte: 10px; tausta: #f5f9fd; tekstin tasaus: keskellä ; reunuksen säde: 3px; ) #tekijä, #sähköposti, #url (leveys: 30%; täyte: 5px; reunuksen säde: 5px; reunus: 1px kiinteä #e5e5e5; ) #kommentti ( täyte: 5px; reunuksen säde: 5px; reunus: 1px kiinteä #e5e5e5; ylivuoto: automaattinen; ) #lähetä ( fontin paino: 400; tausta: #393; fontin koko: 15px; väri: #fff ; täyte: 10px 50px; reunus: ei mitään; kohdistin: osoitin; )

    Kopioi ne ja lähetä ne sivuston aktiivisen teemasi style.css-tiedostoon. Jos haluat sitten muuttaa värejä ja muotoa, mutta tämä on vain edistyneille käyttäjille!

    Nyt sivustosta antamamme palaute on täysin käyttövalmis. Testaa ja nauti sen työstä!

    Siinä kaikki!

    Jos pidit tästä materiaalista? Napsauta sitten sosiaalisia painikkeita, tilaa blogipäivitykset ja kirjoita kommenttisi alle!

    Tervehdys, rakas lukija, tänään olen valmistellut sinulle herkullisen html-palautelomakkeen, joka toimii lataamatta sivua uudelleen Ajax-tekniikalla + tehokkaalla laukaisimella, joka motivoi vierailijoitasi käyttämään lomaketta. Blogini lukijat keskustelivat erittäin aktiivisesti edellisestä aloitussivun artikkelistani, nyt arvioimme ja tarkastelemme viimeisteltyä uutta lomaketta. Kaikki tarpeellinen lähdekoodi ja demo liitteenä artikkelissa, analysoimme myös työn ja yhteyden rakennetta.

    UPD: Virhe nimien koodauksessa aiherivillä on korjattu. Nyt kaikki näkyy oikein. Kiitämme lukijaa (Ekaterina Karacheva)

    Itse lomakkeen muoto sisältää myös PHP:n käsittelijän tiedoston, lisäksi työhön tarvitset jquery-kirjaston ja skriptejä, mutta ensinnäkin, en lataa sitä liian kauan - siirrytään tarkasteluun ja palautemme analysointia.

    HTML palautelomake - työn rakenne

    Lomakkeemme näyttää tältä:

    Mitä järkeä tässä on? Oikealla puolella on tällainen lomake, mutta vasemmalle puolelle tein erityisen lohkon, joka rohkaisee vierailijaasi syöttämään yhteystietonsa välittömästi! Salaisuus on yksinkertainen: Näetkö päivämäärän ja kellonajan vasemmassa lohkossa? Tämän päivän päivämäärä näkyy koko ajan, ajan myötä näiden kahden tunnin vaihteluväli lasketaan nykyisestä tunnista, oletetaan, jos kellosi on nyt 13:14, niin tuntiväli on: 12-14. Katso kuinka se toimii)))

    Vierailija näkee: vau, tänään on alennus, ja olin juuri ajoissa, siellä on myös alennus! Se on otettava heti! - Tämä on laukaisemme.

    Latasin html-palautelomakkeen lähdekoodin, katsoin demoa - mielestäni olen pelannut tarpeeksi)) Nyt tärkeimmästä, toimintaperiaatteesta:

    Syöttölomakkeen kentät tarkistetaan contact.php-käsittelijätiedostosta Alla ohjelmakoodiluettelosta näet, että itse lomakkeessa näkyy viesti virheistä ja kirjeen onnistuneesta lähetyksestä, tältä se näyttää lähetyksen jälkeen:

    Lomakkeen käsittelijän lähdekoodi

    Syötä sähköpostisi riville 52, jotta kaikki kirjeet lähetetään määritettyyn sähköpostiin.

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69

    Muodon suorituskyky

    Jos haluat vastaanottaa kirjeitä postilaatikkoosi, vaihda yllä mainitsemani rivi. Suosittelen käyttämään gmail.com-postia, lomakkeesta luodun kirjeen vastaanottamisessa ei ole viiveitä tai häiriöitä. Varoitin, koska... Lukijoilla oli monia kysymyksiä (kirjeet eivät saapuneet osoitteeseen mail.ru). Ole varovainen tässä.

    Täytämme kaikki kentät, huomaa, että puhelinnumero on syötetty kahdeksalla - kirjoitin työkaluvihjeeseen nimenomaan numeron kahdeksalla "89251122333". Jos syötät "+" -merkin, näkyviin tulee virheilmoitus. Jos joku tarvitsee sitä, on helppo lisätä tämä "+" käsittelijään.

    Täytetty lomake testitiedoilla

    Kirje postilaatikossa

    Kuten näette, saimme kirjeen, jossa oli kaikki kolme täytettyä ja lähetettyä kenttää. Kirjeen "Pyyntö sivustolta" otsikko muuttuu contact.php-käsittelijässä

    Kaikki toimii hyvin, on mukava kuulla palautettasi (rakentavaa kritiikkiä) kommenteissa, jos sinulla on vaikeuksia etkä selviä jostain, kirjoita minulle VK: ssa (löydät sen yhteystiedoista ). Toivon, että pidit tämän palautelomakkeen (palvelujen tilaus, sovellus) ja toimintaan kutsuvan laukaisimen muodostaman symbioosin suunnittelusta ja toimivuudesta. Onnea kaikille työssänne ja positiivista asennetta, hei))

    Valmistettu tuella

    Tällä oppitunnilla tutustumme mail()-toimintoon esimerkkinä palautelomakkeen luomisesta PHP:llä ja sen jälkeen vastaanotetun tiedon lähettämisestä sähköpostitse.

    Tätä varten luomme kaksi tiedostoa - forma.php ja mail.php. Ensimmäinen tiedosto sisältää vain lomakkeen, jossa on kenttiä, joihin käyttäjä voi syöttää tietoja. Lomaketunnisteen sisällä on painike "Lähettää" ja action-attribuutti, joka viittaa käsittelijään - mail.php, josta pääsee käsiksi lomakkeen tietoihin, kun painiketta napsautetaan "Lähettää". Esimerkissämme lomaketiedot lähetetään web-sivulle nimeltä "/mail.php". Tämä sivu sisältää PHP-skriptin, joka käsittelee lomaketiedot:


    Lomaketiedot lähetetään POST-menetelmällä (käsitelty muodossa $_POST). $_POST on joukko muuttujia, jotka välitetään nykyiselle skriptille POST-menetelmällä.

    Alta näet forma.php-tiedoston sisällön, jonka kentät käyttäjä itse täyttää jollain sivustolla. Kaikissa tiedonsyöttökentissä on oltava nimi-attribuutti, kirjoitamme arvot itse, logiikan perusteella.




    PHP-kielinen palautelomake sähköpostitse


    Palautelomake PHP:llä





    Jätä viesti:
    Sinun nimesi:



    Sähköposti:

    Puhelinnumero:

    Viesti:

    Tekstialue voi sisältää rajoittamattoman määrän merkkejä-->







    Tältä lomake näyttää visuaalisesti selaimessa.

    Seuraavaksi kirjoitamme koodin mail.php-tiedostolle. Keksimme omat nimemme muuttujille. PHP:ssä muuttuja alkaa $-merkillä ja sitten muuttujan nimellä. Muuttujan tekstiarvo on lainausmerkeissä. Muuttujien avulla lomakkeen sisältö lähetetään järjestelmänvalvojan sähköpostiin sijoittamalla lomakeelementin nimi hakasulkeisiin - nimen arvo.

    Siten $_POST-taulukon tiedot siirretään vastaaviin muuttujiin ja lähetetään sähköpostiin käyttämällä postitoimintoa. Täytä lomake ja paina lähetä-painiketta. Muista liittää mukaan sähköpostiosoitteesi. Kirje saapui heti perille.

    Palautelomake, tai toisin sanoen, on yksi verkkosivuston tärkeimmistä osista. Ja tietysti, kuten kaikki muutkin käyttöliittymän elementit, kontaktielementit tulee olla jotenkin ulkoisesti tyyliteltyjä ja suunniteltuja, jotta ne herättävät käyttäjien huomion ja kannustavat kommunikointiin.
    Tarjoan harkittavaksi pari vaihtoehtoa palautelomakkeiden tyyleille, yksinomaan 3:lla, ilman lisäkuvien käyttöä suunnittelussa. Ei mitään ylimääräistä, vain lyhyitä koodinpätkiä (katkelmia) kontaktilomakkeille, tehty vaaleissa ja tummissa väreissä.

    1. Yhteydenottolomake tummissa väreissä

    Sivun päätaustan väristä riippuen itse lomakkeen perustaustaväri muuttuu visuaalisesti. Lomakkeen koko riippuu sen astian koosta, johon lomake asetetaan.

    Html-lomakekehys on vakio, tarvittavat syöttökentät ja "Lähetä"-painike vaaditaan linkittämiseen CSS:ään, jokaiselle lomakeelementille on määritetty tietty luokka, ei mitään monimutkaista, sen ymmärtäminen ei ole vaikeaa.

    < form> < input name= "name" placeholder= "Kirjoita nimesi!" class = "name" required /> < input name= "emailaddress" placeholder= "Syötä sähköpostiosoitteesi!" class = "email" type= "email" required /> < textarea rows= "4" cols= "50" name= "subject" placeholder= "Kirjoita viestisi:" class = "message" required> < input name= "submit" class = "btn" type= "submit" value= "Lähettää" />

    CSS

    En mene tyyleihin sen enempää yksityiskohtiin, vaan huomautan yhden asian: käytin suunnittelussa joitain CSS3-ominaisuuksia, lineaarista gradienttia, varjoefektiä, hieman pyöristettyjä kulmia jne., yritin saada aikaan ristikkäisyyttä. -selainyhteensopivuus näille ominaisuuksille, mutta selain vanhemmissa versioissa lomake näyttää silti hieman erilaiselta ((.

    /* Peruslomakkeen tyyli */ muoto ( marginaali: 0 auto; maksimileveys: 95 %; täyte: 30px 30px 6px 30px; reunus: 1px solid rgba(0 , 0 , 0 , .2 ) ; - moz- border- radius : 5px; - webkit- reunus- säde: 5px; reunus- säde: 5px; - moz- tausta- leike: täyttö; - webkit- tausta- leike: täyte-laatikko; tausta- leike: täyte-laatikko; tausta: rgba( 0 , 0 , 0 , 0.5 ) ; - moz- laatikko - varjo: 0 0 13px 3px rgba(0 , 0 , 0 , .5 ) ; - webkit - laatikko - varjo: 0 0 13px 3px rgba(0 , 0 , ) , .5 ) ; box-shadow: 0 0 13px 3px rgba(0 , 0 , 0 , .5 ) ; ylivuoto: piilotettu; ) /* Viestikenttä */ textarea( tausta: rgba(255 , 255 , 255 ), 0.4 ; leveys: 100 %; korkeus: 110 kuvapistettä; reunus: 1px solid rgba(255 , 255 , 255 , .6 ) ; - moz - reunus - säde: 4px; - webkit - reunus - säde: 4px; reunus - säde: 4px; - moz- background- clip: padding; - webkit- background- clip: padding- box; background- clip: padding- box; näyttö: block; font-perhe: "Open Sans", sans- serif; fonttikoko: 18px; fontin paino: 300; väri: #fff; täyte-vasen: 25px; täyte - oikea: 20px; pehmuste-yläosa: 12px; marginaali-ala: 20px; ylivuoto piilotettu; ) /* Syöttökentät */ syöttö ( leveys: 100 %; korkeus: 48 kuvapistettä; reuna: 1px solid rgba(255 , 255 , 255 , .4 ) ; - moz- border- säde: 4px; - webkit- border- säde: 4px; reunus- säde: 4px; - moz- tausta- leike: täyttö; - webkit- tausta- leike: padding- laatikko; tausta- leike: padding- laatikko; näyttö: lohko; font-perhe: "Open Sans" , sans - serif; fontin koko: 18px; fontin paino: 300; väri: #fff; täyttö - vasen: 20px; täyttö - oikea: 20px; marginaali - alaosa: 20px; ) input[ type= lähetä] ( kursori: osoitin; ) syöttö. nimi ( tausta: rgba(255 , 255 , 255 , 0.4 ) ; täyte- vasen: 25px; ) syöttö. sähköposti ( tausta: rgba(255 , 255 , 255 , 0.4 ) ; täyte- vasen: 25px; ) syöttö. viesti ( tausta: rgba(255 , 255 , 255 , 0.4 ) ; täyte- vasen: 25px; ) ::- webkit- input- paikkamerkki ( väri: #fff; ) :- moz- paikkamerkki( väri: #fff; ) : :- moz- paikkamerkki ( väri: #fff; ) :- ms- input- paikkamerkki ( väri: #fff; ) syöttö: kohdistus, tekstialue: tarkennus ( taustaväri: rgba(0, 0, 0, 0.2) ; - moz- box- shadow: 0 0 5px 1px rgba(255 , 255 , 255 , .5 ) ; - webkit - laatikko - varjo: 0 0 5px 1px rgba(255 , 255 , 255 , .5 ): 0 box - shadow 0 5px 1px rgba(255 , 255 , 255 , . 5) ; ylivuoto piilotettu; ) /* Lähetyspainikkeen tyylit */ . btn (leveys: 138px; korkeus: 44px; - moz- reunus- säde: 4px; - webkit- reunus- säde: 4px; reunus- säde: 4px; float: oikea; reunus: 1px kiinteä #253737; tausta: #416b68; tausta: - webkit- gradient(lineaarinen, vasen ylhäällä, vasen alaosa, from(#6da5a3), to(#416b68)); tausta: - webkit- lineaarinen- gradient(ylä, #6da5a3, #416b68); tausta: - moz - lineaarinen- gradientti(ylä, #6da5a3, #416b68); tausta: - ms- lineaarinen- gradientti(ylä, #6da5a3, #416b68); tausta: - o- lineaarinen- gradientti(ylä, #6da5a3, #416b68); taustakuva: - ms- lineaarinen - gradientti (yläosa, #6da5a3 0%, #416b68 100%); täyte: 10. 5px 21px; - webkit - reunus - säde: 6px; - moz - reunus - säde: 6px; reunus - säde: 6px; - verkkopakkaus - laatikko - varjo: rgba(255, 255, 255, 0,1) 0 1px 0, upotettu rgba(255, 255, 255, 0,7) 0 1px 0; - moz- laatikko - varjo: rgba( 255 , 255 , 255 , 0.1 ) 0 1px 0 , upotettu rgba (255 , 255 , 255 , 0.7 ) 0 1px 0 ; laatikkovarjo: rgba(255 , 255 , 0, 21p5 , 01p5 5 , 255, 255, 0,7) 0 1px 0; tekstivarjo: #333333 0 1px 0; väri: #e1e1e1; ) . btn: hover ( reunus: 1px solid #253737; teksti- varjo: #333333 0 1px 0; tausta: #416b68; tausta: - webkit- gradient(lineaarinen, vasen ylhäällä, vasen alhaalla, from(#77b2b0), to(#) 416b68)); tausta: - webkit- lineaarinen- gradient(top, #77b2b0, #416b68); tausta: - moz- lineaarinen- gradient(top, #77b2b0, #416b68); tausta: - ms- lineaarinen- gradient(yläosa) , #77b2b0, #416b68); tausta: - o- lineaarinen- gradientti(yläosa, #77b2b0, #416b68); taustakuva: - ms- lineaarinen- gradientti(ylä, #77b2b0 0%, #416b68 100%); väri: #fff; ). btn: aktiivinen ( marginaali - ylhäällä: 1px; teksti - varjo: #333333 0 -1px 0; reunus: 1px kiinteä #333333; tausta: #ffCC00; tausta: - webkit - gradient(lineaarinen, vasen ylhäällä, vasen alaosa, from( #ffCC00), to(#ff6600)); tausta: - webkit- lineaarinen- gradientti(ylä, #ffcc00, #ff6600); tausta: - moz- lineaarinen- gradient(ylä, #ffcc00, #ff6600); tausta: - ms- lineaarinen- gradient(ylä, #ffcc00, #ff6600); tausta: - o- lineaarinen- gradientti(ylä, #ffcc00, #ff6600); taustakuva: - ms- lineaarinen- gradient(ylä, #ffcc00 0% - moz - laatikkovarjo: rgba(255, 255, 255, 0) 0 1px 0, upotettu rgba(255, 255, 255, 0. 7) 0 1px 0; box-shadow: rgba(255, 255, 255, 0) 0 1px 0, upotettu rgba(255, 255, 255, 0,7) 0 1px 0; ääriviivat: ei mitään; )

    /* Peruslomakkeen tyyli */ muoto ( marginaali: 0 automaattinen; enimmäisleveys: 95 %; täyte: 30px 30px 6px 30px; reunus: 1px solid rgba(0,0,0,.2); -moz-border-radius : 5px; -webkit-border-radius: 5px; border-radius: 5px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box; tausta: rgba( 0, 0, 0, 0,5); -moz-box-shadow: 0 0 13px 3px rgba(0,0,0,.5); -webkit-box-shadow: 0 0 13px 3px rgba(0,0,0) ,.5); box-shadow: 0 0 13px 3px rgba(0,0,0,.5); ylivuoto: piilotettu; ) /* Viestikenttä */ textarea( background: rgba(255, 255, 255, 0.4) ; leveys: 100 %; korkeus: 110 kuvapistettä; reunus: 1px solid rgba(255,255,255,.6); -moz-border-radius: 4px; -webkit-border-radius: 4px; border-radius: 4px; -moz-background -leike: täyte; -webkit-taustaleike: täytelaatikko; taustaleike: täytelaatikko; näyttö: lohko; fonttiperhe: "Open Sans", sans-serif; fontin koko: 18px; fontin paino : 300; väri: #fff; täyte-vasen: 25px; täyte-oikea: 20px; täyte-ylä: 12px; marginaali-ala: 20px; ylivuoto piilotettu; ) /* Syöttökentät */ input ( leveys: 100 %; korkeus: 48 kuvapistettä; reunus: 1px solid rgba(255,255,255,.4); -moz-border-radius: 4px; -webkit-border-radius: 4px; border- säde: 4px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box; näyttö: block; font-family: "Open Sans", sans-serif; fontti -koko:18px; fontin paino: 300; väri:#fff; täyte-vasen:20px; täyte-oikea:20px; margin-bottom:20px; ) input ( kursori:osoitin; ) input.name ( tausta: rgba( 255, 255, 255, 0.4); padding-left:25px; ) input.email ( tausta: rgba(255, 255, 255, 0.4); padding-left:25px; ) input.message ( tausta: rgba(255, 255, 255, 0,4); täyte-vasen:25px; ) ::-webkit-input-placeholder ( väri: #fff; ) :-moz-placeholder( väri: #fff; ) ::-moz-placeholder ( väri: #fff; ) :-ms-input-placeholder ( väri: #fff; ) input:focus, textarea:focus ( taustaväri: rgba(0, 0, 0, 0.2); -moz-box-shadow: 0 0 5px 1px rgba(255,255,255,.5);-webkit-box-shadow: 0 0 5px 1px rgba(255,255,255,.5); box-shadow: 0 0 5px 1px rgba(255,255,255,.5); ylivuoto piilotettu; ) /* Lähetyspainikkeen tyylit */ .btn ( leveys: 138px; korkeus: 44px; -moz-border-radius: 4px; -webkit-border-radius: 4px; border-radius: 4px; float:right; border : 1px solid #253737; tausta: #416b68; tausta: -webkit-gradient(lineaarinen, vasen ylhäällä, vasen alhaalla, from(#6da5a3), to(#416b68)); tausta: -webkit-linear-gradient(top, # 6da5a3, #416b68); tausta: -moz-linear-gradient(top, #6da5a3, #416b68); tausta: -ms-linear-gradient(top, #6da5a3, #416b68); tausta: -o-linear- gradientti (yläosa, #6da5a3, #416b68); taustakuva: -ms-linear-gradient(yläosa, #6da5a3 0%, #416b68 100%); täyte: 10. 5px 21px; -webkit-border-radius: 6px; -moz-border-radius: 6px; reunan säde: 6px; -webkit-box-shadow: rgba(255,255,255,0,1) 0 1px 0, upotettu rgba(255,255,255,0,7) 0 1px 0; -moz-box-shadow: rgba(255,255,255,0,1) 0 1px 0, upotettu rgba(255,255,255,0,7) 0 1px 0; box-shadow: rgba(255,255,255,0,1) 0 1px 0, upotettu rgba(255,255,255,0,7) 0 1px 0; tekstivarjo: #333333 0 1px 0; väri: #e1e1e1; ) .btn:hover ( reunus: 1px solid #253737; tekstivarjo: #333333 0 1px 0; tausta: #416b68; tausta: -webkit-gradient(lineaarinen, vasen ylhäällä, vasen alhaalla, from(#77b2b0), to (#416b68)); tausta: -webkit-linear-gradient(top, #77b2b0, #416b68); tausta: -moz-linear-gradient(top, #77b2b0, #416b68); tausta: -ms-linear-gradient (yläosa, #77b2b0, #416b68); tausta: -o-linear-gradient(top, #77b2b0, #416b68); taustakuva: -ms-linear-gradient(top, #77b2b0 0%, #416b68 100% ); väri: #fff; ) .btn:active ( margin-top: 1px; teksti-varjo: #333333 0 -1px 0; reunus: 1px solid #333333; tausta: #ffCC00; tausta: -webkit-gradient(lineaarinen , vasen ylhäällä, vasen alaosa, from(#ffCC00), to(#ff6600)); tausta: -webkit-linear-gradient(top, #ffcc00, #ff6600); tausta: -moz-linear-gradient(top, # ffcc00, #ff6600); tausta: -ms-linear-gradient(top, #ffcc00, #ff6600); tausta: -o-linear-gradient(top, #ffcc00, #ff6600); taustakuva: -ms-linear -gradientti (yläosa, #ffcc00 0%, #ff6600 100%); väri: #fff; -webkit-box-shadow: rgba(255,255,255,0) 0 1px 0, upotettu rgba(255,255,255,0,7) 0 1px 0; -moz-box-shadow: rgba(255,255,255,0) 0 1px 0, upotettu rgba(255,255,255,0,7) 0 1px 0; box-shadow: rgba(255,255,255,0) 0 1px 0, upotettu rgba(255,255,255,0,7) 0 1px 0; ääriviivat: ei mitään; )

    Ehkä tämä kiinnostaa sinua: 2. Yhteydenottolomake vaaleissa väreissä

    Palautelomakkeen toinen suunnitteluvaihtoehto on esitetty vaaleissa väreissä; lomakkeen mitat (leveys, korkeus), kuten ensimmäisessä vaihtoehdossa, eivät ole kiinteitä, ja ne sopivat helposti säiliön mittoihin, jossa tämä lomake on sijaitsee.

    HTML

    Kuten ensimmäisessä vaihtoehdossa, yhteydenottolomakkeen Html-rakenne on vakio, lomakeelementit, joiden tietyt luokat vastaavat CSS:n luokkia.

    < form> < input name= "name" placeholder= "Kirjoita nimesi!" class = "textbox" required /> < input name= "emailaddress" placeholder= "Syötä sähköpostiosoitteesi!" class = "textbox" type= "email" required /> < textarea rows= "4" cols= "50" name= "subject" placeholder= "Kirjoita viestisi:" class = "message" required> < input name= "submit" class = "button" type= "submit" value= "Lähettää" />

    CSS

    Lomakkeiden ja sisäelementtien peruskokoja muodostettaessa käytin leveyden prosentuaalisia arvoja, joiden ansiosta lomake on helposti sovitettavissa sen säiliön mittoihin, johon se sijoitetaan. "Lähetä"-painikkeen värimaailmaa, sen kokoa ja sijaintia voidaan helposti muuttaa, vain kokeile tiettyjä arvoja.

    /* Lomakkeiden perustyylit */ muoto( marginaali: 0 auto; maksimileveys: 95%; laatikon koko: reunus- laatikko; täyte: 40px; reunuksen säde: 5px; tausta: RGBA(255 , 255 , 255 , 1 ) ; - webkit - laatikko - varjo: 0px 0px 15px 0px rgba(0 , 0 , 0 , .45 ) ; box - shadow: 0px 0px 15px 0px rgba(0 , 0 , 0 , .45 ) * marginaalityyli syöttö */ . textbox( korkeus: 50px; leveys: 100%; reunuksen säde: 3px; reunus: rgba(0 , 0 , 0 , .3 ) 2px solid; box-sizing: border-box; font-perhe: "Open Sans" , sans-serif; font-koko: 18px; täyte: 10px; margin-ala: 30px; ) . viesti: keskittyä, . textbox: focus( outline: none; border: rgba(24 , 149 , 215 , 1 ) 2px solid; color: rgba(24 , 149 , 215 , 1 ) ; ) /* Tekstilaatikon tyylit */ . viesti( tausta: rgba(255 , 255 , 255 , 0.4 ) ; leveys: 100 %; korkeus: 120px; reunus: rgba(0 , 0 , 0 , .3 ) 2px solid; box-sizing: border-box; - moz - reunuksen säde: 3px; fontin koko: 18px; fonttiperhe: "Open Sans" , sans- serif; - webkit- border- säde: 3px; reunuksen säde: 3px; näyttö: lohko; täyte: 10px; marginaali - alaosa: 30 kuvapistettä; ylivuoto: piilotettu; ) /* Painikkeiden perustyylit */ . button( korkeus: 50px; leveys: 100%; reunuksen säde: 3px; reunus: rgba(0 , 0 , 0 , .3 ) 0px solid; box-sizing: border-box; täyte: 10px; tausta: #90c843; väri: #FFF; kirjasinperhe: "Open Sans" , sans- serif; fontin paino: 400; fontin koko: 16pt; siirtymä: tausta. 4s; kohdistin: osoitin; ) /* Muuta painikkeen taustaa osoitinta vietäessä * / . painike: hover( tausta: #80b438; )

    /* Lomakkeiden perustyylit */ muoto( margin:0 auto; max-width:95%; box-sizing:border-box; padding:40px; border-radius:5px; background:RGBA(255,255,255,1); -webkit -box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, .45); box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, .45); ) /* Syöttökenttien tyylit */ . textbox( korkeus:50px; leveys:100%; border-radius:3px; border:rgba(0,0,0,.3) 2px solid; box-sizing:border-box; font-family: "Open Sans", sanaton 24,149,215,1); ) /* Tekstikenttien tyylit */ .message( tausta: rgba(255, 255, 255, 0,4); leveys: 100%; korkeus: 120px; border:rgba(0,0,0,.3 ) 2px solid; box-sizing:border-box; -moz-border-radius: 3px; font-size:18px; font-family: "Open Sans", sans-serif; -webkit-border-radius: 3px; border -säde: 3px; näyttö:lohko; täyte:10px; margin-bottom:30px; overflow:hidden; ) /* Painikkeiden perustyylit */ .button( height:50px; leveys: 100%; border-radius:3px; border:rgba(0,0,0,.3) 0px solid; box-sizing:border-box; täyte: 10px; tausta:#90c843; väri: #FFF; font-family: "Open Sans", sans-serif; fontin paino: 400; kirjasinkoko: 16 pt; siirtymä: tausta .4s; kursori:osoitin; ) /* Muuta painikkeen taustaa hoverissa */ .button:hover( background:#80b438; )

    Yhteyslomakkeiden suunnitteluvaihtoehtoja on paljon, tärkeintä on vähän mielikuvitusta ja CSS:n perustietoja. Blogini sivuilta löydät muita ja esimerkkejä palautelomakkeiden tyylistä.
    Erityisen välinpitämättömille haluan selittää vielä kerran: artikkelissa esitetyt lomakkeet ovat vain ulkokuori; jotta lomakkeet todella suorittaisivat tehtävänsä, niihin on liitettävä komentosarjan käsittelijä, joista niitä on paljon hajallaan Internetissä, joten on vakuuttavaa, älä kirjoita kommentteihin, että lomakkeet eivät toimi jne., kaikki toimii hienosti, sinun on vain ymmärrettävä mitä, missä ja miksi))).

    Kaikella kunnioituksella, Andrew.