CSS-reunus: säde, väri, tyyli ja muut CSS-reunuksen ominaisuudet. Ulkokehyksen ääriviivojen siirtymä. Sivujen arvojen asettaminen erikseen

Luulen, että kaikki tietävät, että pyöristettyjen kulmien tekeminen lohkoille on suuri ongelma. Selaimien välistä ratkaisua ei ole vielä olemassa ilman JS-sauvoja. IE9:n julkaisun myötä päänsärkyä on vähemmän, mutta jos olet edelleen kiireinen IE6/7:n koodaamisessa, tämä ei ole sinulle pelastus. Mutta vaikka IE6/7 vaipuisi unohdukseen, kestää vielä kauan ennen kuin unohdamme tämän selaimen 8. version, joka ei myöskään tue border-radius-parametria. Toisin sanoen, sivustomme toimivat JavaScript-steroideilla pitkään.

Pyöristetyistä muodoista on kirjoitettu paljon artikkeleita, mutta ne kaikki (ne, jotka löysin) vaikenevat olemassa olevan ongelman korjausten käytön hienouksista ja vivahteista. Yritän luetella kaikki vaikeudet, joita kohtasin käyttäessäni suosittuja ratkaisuja.

Aluksi sanon muutaman sanan siitä, miten tilanne on muuttumassa raja-säde kun uusia selainversioita julkaistaan.

Ensinnäkin FireFoxin versio 4 ei enää tarvitse omaa -moz-border-radius -parametria. IE9, kuten jo sanoin, toteuttaa myös border-radius-tuen, ainakin RC-versiossa se on jo olemassa. Kaikki on ollut loistavaa Operassa versiosta 10.5 lähtien.

Nyt ratkaisuja niille, joilta Jumala on riistänyt.

Ja niin, on olemassa kaksi tunnetuinta ja käytetyintä menetelmää tee rajasäteen rajat ylittävä selain. Ensimmäinen on Curved-corner, joka käyttää VML ja käyttäytyminen. Toinen on CSS3 PIE, jolla on kaksi toteutusta. Toinen perustuu myös VML:ään ja käyttäytymiseen, toinen on JavaScript-kirjasto.

Harkitse molempia ratkaisuja.

Kaareva kulma

Löysin vain yhden edun - mukana toimitetun border-radius.htc-tiedoston kevyen painon. Nykyinen versio toteutus vie vain 5 kt. PIE:tä vastaan, joka painaa 33 kb, tämä on varmasti merkittävä etu. Mutta siihen positiiviset asiat loppuvat, ainakin minulle.

Haittoja on paljon. Esimerkiksi seuraava rakenne ei toimi:

#valitsin ( reunus: #c6c5c2 1px kiinteä; border-top: ei mitään; reunuksen säde: 0 0 6px 6px; tausta: #f0ecdf; käyttäytyminen: url(border-radius.htc); )

Ensinnäkin, et voi poistaa kehystä yhdeltä sivulta. Toisin sanoen border-top-parametri lisää reunuksen koko lohkoon, vaikka kulmat pysyvät pyöristetyinä. Hassua, mutta border-bottom -parametri jättää kehyksen paikoilleen, mutta ei anna mitään vaikutusta, eli raja pysyy koko lohkon ympärillä.

Toiseksi, jos sinun tarvitsee leikata vain kaksi kulmaa, kuten esimerkissä, tulet pettymään. Kaareva kulma ei voi tehdä sitä. Se voi pyöristää vain lohkon kaikkia kulmia ja samalla sädearvolla. Kulmia, joilla on eri kaarevuussäteet, ei voida saavuttaa. Oikea ja toimiva versio näyttää tältä:

#valitsin ( reunus: #c6c5c2 1px solid; border-radius: 6px; käyttäytyminen: url(border-radius.htc); )

Kolmanneksi Curved-corner ei toimi lohkoille, joiden taustana on kuva.

No viimeinen epämiellyttävä hetki– työn nopeus. Kulmia ei pyöristetä heti. Siitä hetkestä, kun sivu latautuu, kunnes kulmat muuttuvat vaadittava lomake, kestää noin sekunnin. Visuaalisesti viive on hyvin havaittavissa ja selvästi havaittavissa.

Oli joitain muita ongelmia (lue yksityiskohdat), mutta en nyt muista.

Yhteenvetona voimme sanoa, että tämä korjaus sopii vain hyvin yksinkertaisiin tehtäviin. Vaikka, kuten käytäntö osoittaa, tällaisia ​​​​yksinkertaisia ​​​​tehtäviä kohdataan harvoin.

CSS3 PIE

Se painaa paljon, et voi sanoa mitään. Version PIE 1.0 beta 4 kestää 33 kt, sekä .htc-toteutuksessa että js-analogissa. Mutta samaan aikaan CSS3 PIE:llä ei ole kaikkia niitä reunasäteen ongelmia, joita Curved-cornerilla on. Pidän myös todella kyvystä käyttää JS-toteutusta, joka ei vaadi lisäkoodi CSS:ssä ja voi kytkeytyä mihin tahansa valitsimeen (esimerkiksi jQueryä käytettäessä).

CSS3 PIE:ssä on myös viive renderöinnissa (joskus ei), mutta se on huomattavasti pienempi kuin Curved-cornerin tapauksessa. Se on lähes näkymätön, mikä tekee kirjastosta erittäin houkuttelevan ja käyttökelpoisen.

Hienoa on, että CSS3 PIE korjaa ongelman paitsi raja-säde, mutta lisää myös huomattavan määrän CSS3-ominaisuuksia Microsoftin selaimiin. Näin toimivat esimerkiksi border-image ja box-shadow, liukuvärien kanssa työskentelyn ominaisuudet. Ongelmaa ollaan ratkaisemassa png läpinäkyvyys ja paljon muuta. Kaikki tämä tunnetusti kompensoi ja selittää CSS3 PIE:n koon.

Silti kärpänen

Valitettavasti kumpikaan CSS3 PIE tai Curved-corner eivät pysty tukkimaan kaikkia halkeamia. Joten esimerkiksi et saa pyöristettyjä kulmia niille elementeille, jotka on alun perin piilotettu - niissä on näyttö: none parametri. Samoin näkyvän parametrin ja sen piilotetun arvon kanssa. Ongelmia voi syntyä, jos elementti on sijoitettu ehdottomasti. Voi, anna yksityiskohtainen kuvaus En osaa kuvailla tilannetta, koska en pystynyt toistamaan olosuhteita, joissa ongelmia ilmeni, mutta muistan, että ongelmia oli varmasti.

On vielä yksi saalis, jonka tiedän. Reunussäteen käyttäminen elementille, kun hiiri vie sen päälle, seuraavasti:

A:hover ( tausta: #ccc; väri: #000; reunus: #ccc 1px kiinteä; reunan säde: 6px )

On välttämätöntä, että tällä elementillä on aluksi pyöristetyt kulmat, muuten vaikutusta ei ole. Eli sisään tässä esimerkissä, siellä pitäisi olla valitsin A, jolla on myös rajan säde ja reuna määritetty:

A ( tausta: #fff; väri: #000; reunus: #fff 1px kiinteä; reunuksen säde: 6px ) a:hover ( tausta: #cc; väri: #000; reunus: #ccc 1px kiinteä; reunan säde: 6px)

Tulokset

Itselleni ehdoton suosikkini on CSS3 PIE. Se todella tekee tehtävänsä ja tekee sen hyvin. Lisäksi kirjasto kehittyy. Tätä kehitystä seuraa säännöllinen uusien versioiden julkaiseminen, mikä on erittäin rohkaisevaa.

Olen varma, että olet jo perehtynyt border css -ominaisuuteen. Opitko jotain uutta, mitä et tiennyt ennen css borderista? No, et vain opi, vaan näet myös useita uusia asioita, joita et koskaan ennen tiennyt!

CSS3:lla ei voi ainoastaan ​​luoda pyöristettyjä kulmia, vaan puhdasta CSS-koodia voidaan käyttää myös monimutkaisten muotojen luomiseen. Aiemmin voit käyttää taustakuvaa luodaksesi ulkonäön pyöristetyistä kulmista. Uusien reunusten käyttötekniikoiden ansiosta voimme tehdä tämän puhtaalla CSS-koodilla.

CSS-reunuksen käytön perusteet

Olet luultavasti jo tuttu tavallinen käyttö reunan ominaisuudet:

Reunus: 1px yksivärinen musta;

Yllä oleva koodi tulostaa 1 pikselin reunuksen, joka on musta. Helppoa ja yksinkertaista. Voit myös laajentaa syntaksia hieman:

Reunuksen leveys: paksu; reuna-tyyli: kiinteä; reunan väri: musta;

Lisäyksenä voit käyttää tiettyjä arvoja rajan ominaisuuksia-leveys, kolme avainsanoja: ohut, keskikokoinen, paksu.

Mutta laajennetun syntaksin käyttö ei ole aina käytännöllistä. Katsotaanpa esimerkkiä, kun sinun on vaihdettava lohkokehyksen väriä, kun hiirtä liikutetaan. Tässä tapauksessa lyhennetyn syntaksin käyttö on paljon yksinkertaisempaa:

Laatikko ( reunus: 1px tasainen punainen; ) .box:hover ( reunus: 1px kiinteä vihreä; )

Tyylikkäämpi ja yksinkertaisempi tapa tehdä tämä on:

Laatikko ( reunus: 1px tasainen punainen; ) .box:hover ( reunuksen väri: vihreä; )

Kuten näet, edistynyt tekniikka on hyödyllinen myös silloin, kun muutamme vain joitain ominaisuuksia: leveyttä, tyyliä, väriä ja muita.

Raja-säde

Raja-säde- Tämä on CSS3:n "kultainen" ominaisuus - ensimmäinen, yleisin ominaisuus, josta tuli käytännöllinen ja hyödyllinen. IE8:aa ja alla olevia versioita lukuun ottamatta kaikki selaimet näyttävät pyöristetyt kulmat tätä käyttämällä.

Webkitille ja Mozillalle on kuitenkin käytettävä erityisiä etuliitteitä, jotta tyyli olisi oikea.

Webkit-border-radius: 10px; -moz-border-radius: 10px; reunan säde: 10px;

Nykyään voimme poistaa erikoisetuliitteet ja käyttää vakiomuotoista raja-sädemuotoa.

Toinen etu on, että voimme käyttää erityisiä arvoja lohkon jokaiselle puolelle:

Reunus-ylävasen-säde: 20px; raja-ylä-oikea-säde: 0; reunus-alha-oikea-säde: 30px; raja-ala-vasen-säde: 0;

Yllä olevassa koodissa reunus-yläoikean-säteen ja reuna-alha-vasen-säteen asettaminen "nulliksi" voi saada hämmästyttäviä muotoja. Vaikka elementti voi periä joitain ominaisuuksia, jotka on nollattava.

Kuten marginaali ja täyte, voimme pakata syntaksin:

/* ylhäällä vasen, ylhäällä oikea, alhaalla oikea, alhaalla vasen */ border-radius: 20px 0 30px 0;

Esimerkkinä border-radius-ominaisuuden käytöstä näytän sinulle "sitruunan", jota suunnittelijat käyttävät usein verkkosivustojen suunnittelussa:

Sitruuna (leveys: 200px; korkeus: 200px; tausta: #F5F240; reunus: 1px kiinteä #F0D900; reunan säde: 10px 150px 30px 150px;)

Mennään perusasioiden pidemmälle

Monille suunnittelijoille kaikki tieto CSS-reunusominaisuuksien alalla päättyy tähän. Mutta on joitain muita hienoja asioita, joiden avulla voit luoda upeita asioita!

Monimutkaiset css-reunusrakenteet

Suunnitelmien luomiseen monimutkaisia ​​reunarakenteita käyttämällä on monia tekniikoita. Katsotaanpa esimerkiksi seuraavaa...

Border-tyyli

Käytämme aina tunnetuimpia ominaisuuksia kiinteinä, katkoviivoina ja pisteinä. Mutta on olemassa pari muuta reunatyylistä ominaisuutta: ura ja harja.

Reunus: 20 kuvapisteen ura #e3e3e3;

Tai laajennetussa syntaksissa:

Reunuksen väri: #e3e3e3; reunan leveys: 20 pikseliä; reuna-tyyli: ura;

Vaikka nämä ominaisuudet ovat hyödyllisiä, ne eivät ole perusta monimutkaisten kehysten luomiselle.

Outline

Suosituin luomistekniikka kaksoiskehys- ääriviivaominaisuuden käyttö.

Laatikko (reunus: 5px kiinteä #292929; ääriviivat: 5px kiinteä #e3e3e3; )

Tämä menetelmä toimii hyvin, vaikka se rajoittaa meidät vain kahteen kehykseen. Joskus täytyy luoda gradienttireunus, joka koostuu useista kerroksista... miten sitten?

Pseudoelementtejä

Kun ääriviivatekniikka ei riitä, vaihtoehtoisia keinoja on käyttää pseudoelementtejä:ennen ja:jälkeen. Millä voi lisätä lisäkehyksiä elementtiin:

Laatikko ( leveys: 200px; korkeus: 200px; tausta: #e3e3e3; sijainti: suhteellinen; reunus: 10px tasainen vihreä; ) /* Luo kaksi laatikkoa, joiden leveys on sama kuin säilö */ .box:after, .box:before ( sisältö: ""; sijainti: absoluuttinen: 0

Ei näytä kovin tyylikkäältä, mutta ainakin toimii. On hieman vaikeaa selvittää värien järjestystä kehyksissä... mutta voit selvittää sen.

Box-Shadow

Mielenkiintoinen "lasten tapa" luoda samanlainen vaikutus on käyttää CSS3 box-shadow -ominaisuutta:

Laatikko (reunus: 5px tasainen punainen; laatikon varjo: 0 0 0 5px vihreä, 0 0 0 10px keltainen, 0 0 0 15px oranssi;)

Tässä tapauksessa olimme älykkäämpiä ja käytimme erityistä laatikkovarjoominaisuutta. Muuttamalla x, y, sumeusparametrit nollaan, voimme käyttää eri värejä useiden kehysten luomiseen.

Mutta siinä on ongelma: vanhemmissa selaimissa, jotka eivät ymmärrä box-shadow -ominaisuutta, vain yksi 5px punainen kehys näkyy.

"Muistaa! Sivuston ulkoasun tulee näyttää selainväliseltä, eli samalta kaikissa selaimissa. Mukaan lukien vanhemmat versiot."

Kulmien vaihtaminen

Käytetyn lisäksi yksinkertainen merkitys border-radius, voimme määrittää kaksi erillistä - erottamalla ne / -osoittelemme vaaka- ja pystysäteen.

Esimerkiksi:

Reunuksen säde: 50px / 100px; /* vaakasäde, pystysäde */

... tämä vastaa:

Reunus-ylävasen-säde: 50px 100px; reunus-ylä-oikea-säde: 50px 100px; reunus-ala-oikea-säde: 50px 100px; reunus-ala-vasen-säde: 50px 100px;

Tämä tekniikka sopii ainutlaatuisten lohkomuotojen luomiseen. Voit luoda kääreeseen paperitehosteen esimerkiksi seuraavasti:

Laatikko (leveys: 200px; korkeus: 200px; tausta: #666; reunus-ylä-vasen-säde: 15em 1em; reunus-alha-oikea-säde: 15em 1em; )

CSS-lomakkeet reunalla

Tämä tekniikka näyttää, kuinka voit luoda CSS-lomakkeita, kun käytät elementtejä nolla mitat korkeus ja leveys. Yllättynyt? Katsotaanpa esimerkkiä...

Seuraavissa esimerkeissä käytämme seuraavia merkintöjä:

...ja seuraava perustyyli:

Laatikko (leveys: 200px; korkeus: 200px; tausta: musta; )

Yleisin esimerkki CSS-muotojen käytöstä on rivitysnuolen luominen. Tämän nuolen salaisuus piilee eriväristen reunusten luomisessa jokaiselle puolelle. Aseta sitten leveys- ja korkeusmääritteiksi 0.

Määritetään nuoliluokka div-lohkolle:

Nuoli (leveys: 0; korkeus: 0; reunus yläreunassa: 100px tasainen punainen; reunus oikea: 100px tasainen vihreä; reuna-ala: 100px tasainen sininen; reunus vasen: 100px tasainen keltainen; )

Havainnollistamiseen käytämme ensin laajennettua syntaksia. Seuraavaksi voimme poistaa ylimääräisen koodin käyttämällä lyhennettyä syntaksia:

Nuoli (leveys: 0; korkeus: 0; reunus: 100px kiinteä; reunuksen väri: punainen vihreä sininen keltainen;)

Mielenkiintoista, eikö? Nyt asennamme läpinäkyviä värejä kaikilta puolilta paitsi sinistä puolta.

Nuoli (leveys: 0; korkeus: 0; reunus: 100 pikseliä yhtenäinen; reuna-ala-väri: sininen; )

Siitä tuli hienoa! Mutta tämä on ristiriidassa semanttinen asettelu, luo .arrow div vain lisätäksesi nuolen sivulle. Tätä tarkoitusta varten voimme käyttää pseudoelementtejä, mitä teemme nyt.

Luo puhekupla

Puhekuplan luomiseksi tarvitsemme pienen palan puhdas CSS koodi ja yksi div-lohko.

Hei!

Puhekupla ( sijainti: suhteellinen; taustaväri: #292929; leveys: 200 pikseliä; korkeus: 150 pikseliä; rivin korkeus: 150 kuvapistettä; /* pystysuunnassa keskellä */ väri: valkoinen; tekstin tasaus: keskellä; )

Puhekupla:jälkeen ( sisältö: ""; )

Tässä vaiheessa luomme aiemmin tekemämme nuolen, lisäämme sen elementtiin ja jäljellä on vain sijoittaa se:

Puhekupla: jälkeen (sisältö: ""; sijainti: absoluuttinen; leveys: 0; korkeus: 0; reuna: 10px kiinteä; reunuksen väri: punainen vihreä sininen keltainen; )

Jos haluamme nuolen osoittavan alaspäin, meidän on asetettava kaikki reunat läpinäkyviksi paitsi yläreuna.

Puhekupla:jälkeen (sisältö: ""; sijainti: absoluuttinen; leveys: 0; korkeus: 0; reunus: 10px kiinteä; reunuksen yläväri: punainen; )

Kun luomme tämän CSS-lomakkeen, emme voi erikseen määrittää nuolen kokoa. Sen sijaan voimme asettaa border-width -ominaisuuden, joka määrittää nuolelle koon. Asetamme myös alareunassa olevan nuolen sijainnin keskelle. Vastaavasti tätä varten käytämme arvoja ylhäällä ja vasemmalla.

Puhekupla:jälkeen (sisältö: ""; sijainti: absoluuttinen; leveys: 0; korkeus: 0; reunus: 15px kiinteä; reunuksen yläväri: punainen; yläosa: 100%; vasen: 50%; )

Lisäksi meidän on vain annettava sille sama väri kuin lohkolle. Muista, että sijoittaessasi sinun on otettava huomioon muiden näkymättömien reunusten koko (15px). Annamme myös lohkon pyöristyksen kulmiin.

Puhekupla ( /* … muut tyylit */ reuna-säde: 10px; ) .speech-bubble:after ( sisältö: ""; sijainti: absoluuttinen; leveys: 0; korkeus: 0; reuna: 15px kiinteä; reuna-yläosa -väri: #292929: 100% margin-vasen: -15px */ )

Ei paha, vai mitä? Käyttämällä useita CSS-luokkia ja rajatemppuja voit luoda sellaisen.

/* Puhekuplien käyttö: Käytä luokkaa .speech-bubble ja .speech-bubble-DIRECTION alla olevan kuvan mukaisesti

Hei
- säde: 10px: kirjasinperhe: sans-serif ) .speech-bubble:after ( sisältö: ""; sijainti: absoluuttinen; leveys: 0; korkeus: 0; reunus: 15px kiinteä; ) /* Aseta nuoli */ .speech-bubble-top:after ( border-bottom-color: #292929; left: 50%; bottom: 100%; margin-left: -15px; ) .speech-bubble-right:after ( border-left-color : #292929 vasen: 100% margin-top: -15px .speech-bubble-bottom: after (reunus-ylä-väri: #292929; ylhäällä: 100%; vasen: -15px; ; ) .speech-bubble-left:after (reunus-oikea-väri: #292929; ylhäällä: 50%; oikea: 100%; marginaali-ylä: -15px; )

Bonus! Pysty keskitys lohkon sisällä

Yhden tekstirivin kohdalla voit käyttää rivinkorkeutta. Mutta jos sinulla on kaksi tai useampi riviä tekstiä... Paras ratkaisu on asettaa näyttöominaisuus taulukkoon ja laittaa kaikki teksti kappaleeseen. Tältä se näyttää html-merkinnöissä:

Speech-bubble ( /* muut tyylit */ näyttö: taulukko; ) .speech-bubble p ( näyttö: taulukko-solu; pystytasaus: keskellä; )

Emme rajoita itseämme kolmioihin. CSS pystyy näyttämään erilaisia ​​muotoja – jopa sydämiä ja biohazard-merkin.

Biohazard (leveys: 0; korkeus: 0; reunus: 60 pikseliä kiinteä; reunan säde: 50 %; reunuksen yläväri: musta; reunan alaosan väri: musta; reunuksen vasen väri: keltainen; reunus-oikea-väri väri: keltainen)

Johtopäätös


Edellisellä oppitunnilla opimme asettamaan reunuksen elementille. Tarkastelimme myös ominaisuuksia, kuten border-color ja border-style , joilla voit mukauttaa reunuksen väriä ja tyyliä. Kaikki kehyksemme tulivat kuitenkin suorissa kulmissa. Nyt näytämme kuinka luoda pyöristetyt kulmat CSS:ssä reunuksia varten.

Kulmien pyöristäminen: CSS3 border-radius -ominaisuus

CSS:n kulmien pyöristäminen voidaan tehdä mille tahansa HTML-sivun elementille. Tätä varten sinun on käytettävä border-radius-ominaisuutta sille sopivalla arvolla. Useimmiten arvo määritetään pikseleinä, mutta myös muita yksiköitä voidaan käyttää, kuten em tai prosentti (jälkimmäisessä tapauksessa laskenta tapahtuu suhteessa lohkon leveyteen).

Vaikutus tästä omaisuudesta on havaittavissa vain, jos tyyliteltävällä elementillä on värillinen tausta ja/tai reunus. Esimerkiksi:

BorderElement ( taustaväri: #EEDDFF; reunus: 6px kiinteä #7922CC; reunan säde: 25px; )

Yllä kuvattu tyyli antaa elementille seuraavan tuloksen

koko 200x200 pikseliä:


Voit myös tehdä pyöristetyt reunat vain elementin ylä- tai alakulmaan tai antaa kullekin kulman eri pyöristyssäteen - paljon tilaa mielikuvitukselle! Esimerkki:

BorderElement ( taustaväri: #EEDDFF; reunus: 6px kiinteä #7922CC; reunuksen säde: 25px; ) .borderElement1 ( taustaväri: #FFE8DB; reunus: 6px kiinteä #FF5A00; reunan säde: 15px 100px 15px; 100)

Mutta siinä ei vielä kaikki: yksinkertaisten pyöreiden kulmien sijaan voit määrittää elliptisen pyöristyksen. Tätä varten sinun on määritettävä kaksi kauttaviivalla erotettua arvoa (ellipsin vaaka- ja pystysuoralle puoliakselille). Otetaan esimerkki 150x450 pikselin lohkosta:

BorderElement ( taustaväri: #EEDDFF; reunus: 6px kiinteä #7922CC; reunan säde: 280px/100px; )

Voit sekoittaa arvoja (eli käyttää sekä tavallista että elliptistä pyöristettyä samalla tyylillä), ja voit myös lisätä jokaiseen kulmaan henkilökohtaisen tyylin sopivilla ominaisuuksilla:

  • border-top-left-radius - vasempaan yläkulmaan;
  • border-top-right-radius - oikealle yläkulmalle;
  • border-bottom-left-radius - vasempaan alakulmaan;
  • border-bottom-right-radius - oikeaan alakulmaan.

Kulmien pyöristyksen periaate

Alla oleva kuva näyttää, kuinka kulmien pyöristys lasketaan CSS:ssä. Joten jos kulmalle on määritetty yksi arvo - esimerkiksi 20px - tämä tarkoittaa, että pyöristys tapahtuu ympyrää, jonka säde on 20 pikseliä. Jos kaksi arvoa on erotettu vinoviivalla, esimerkiksi 30px/20px , kulmat pyöristetään ellipsin mukaan. Ensimmäinen arvo on tässä tapauksessa ellipsin vaakasuuntaisen puoliakselin pituus - 30 pikseliä ja toinen arvo on pystysuoran puoliakselin pituus - 20 kuvapistettä:



Kaikki tukevat CSS-raja-säde-ominaisuutta modernit versiot selaimet.

Border-radius-ominaisuus ei koske taulukkoelementtejä, jos niillä on jaetut tai erilliset reunat."> border-collapse on tiivistys .

Huomautus: Kuten mikä tahansa lyhennelmäominaisuus, yksittäiset aliominaisuudet eivät voi periä, kuten border-radius:0 0 inherit inherit , mikä ohittaisi osittain olemassa olevat määritelmät. Sen sijaan on käytettävä yksittäisiä pitkän käden ominaisuuksia.

Syntaksi

/* Ensimmäisen säteen syntaksi sallii yhdestä neljään arvoa*//* Säde on asetettu kaikille 4 sivulle */ border-radius: 10px; /* ylhäällä-vasemmalla-ja-alhaalla-oikealla | ylhäältä oikealta ja alhaalta-vasemmalta*/ reunan säde: 10px 5%; /* ylävasemmalla | ylhäältä oikealta ja alhaalta-vasemmalta | alhaalla oikealla*/ reunan säde: 2px 4px 2px; /* ylävasemmalla | yläoikealla | alhaalla oikealla | alhaalla vasemmalla*/ reunan säde: 1px 0 3px 4px; /* Toisen säteen syntaksi sallii yhdestä neljään arvoa*/ /* (ensimmäisen säteen arvot) / säde*/ reunan säde: 10px 5% / 20px; /* (ensimmäisen säteen arvot) / ylhäällä-vasemmalla-ja-alhaalla-oikealla | ylhäältä oikealta ja alhaalta-vasemmalta*/ reunan säde: 10px 5% / 20px 30px; /* (ensimmäisen säteen arvot) / ylävasemmalla | ylhäältä oikealta ja alhaalta-vasemmalta | alhaalla oikealla*/ reunan säde: 10px 5px 2em / 20px 25px 30%; /* (ensimmäisen säteen arvot) / ylävasemmalla | yläoikealla | alhaalla oikealla | alhaalla vasemmalla*/ reunan säde: 10px 5% / 20px 25em 30px 35em; /* Globaalit arvot*/ border-radius: inherit; raja-säde: alku; raja-säde: ei asetettu;

Rajan säteen ominaisuus määritetään seuraavasti:

  • yksi, kaksi, kolme tai neljä CSS-tietotyyppi edustaa etäisyysarvoa. Pituuksia voidaan käyttää useissa CSS-ominaisuuksissa, kuten leveys, korkeus, marginaali, täyte, reunuksen leveys, kirjasinkoko ja tekstin varjo."> tai CSS-tietotyyppi edustaa prosenttiarvoa. Sitä käytetään usein määrittämään koko suhteessa elementin pääobjektiin. Monet ominaisuudet voivat käyttää prosenttiosuuksia, kuten leveyskorkeus marginaalin täyte ja font-size.> arvot. Tätä käytetään asettamaan kulmille yksi säde.
  • jota seuraa valinnaisesti "/" ja yksi, kaksi, kolme tai neljä tai Arvot. Tätä käytetään lisäsäteen asettamiseen, jotta sinulla voi olla elliptisiä kulmia.

Arvot

säde Onko CSS-tietotyyppi edustaa etäisyysarvoa. Pituuksia voidaan käyttää useissa CSS-ominaisuuksissa, kuten leveys, korkeus, marginaali, täyte, reunuksen leveys, kirjasinkoko ja tekstin varjo."> tai CSS-tietotyyppi edustaa prosenttiarvoa. Sitä käytetään usein määrittämään koko suhteessa elementin pääobjektiin. Monet ominaisuudet voivat käyttää prosenttiosuuksia, kuten leveyskorkeus marginaalin täyte ja font-size.> ilmaisee säteen, jota käytetään reunukselle reunan jokaisessa kulmassa. Sitä käytetään vain yhden arvon syntaksissa.
ylhäällä-vasemmalla-ja-alhaalla-oikealla Onko CSS-tietotyyppi edustaa etäisyysarvoa. Pituuksia voidaan käyttää useissa CSS-ominaisuuksissa, kuten leveys, korkeus, marginaali, täyte, reunuksen leveys, kirjasinkoko ja tekstin varjo."> tai CSS-tietotyyppi edustaa prosenttiarvoa. Sitä käytetään usein määrittämään koko suhteessa elementin pääobjektiin. Monet ominaisuudet voivat käyttää prosenttiosuuksia, kuten leveyskorkeus marginaalin täyte ja font-size.> ilmaisee säteen, jota käytetään reunukselle elementin laatikon vasemmassa ja oikeassa alakulmassa. Sitä käytetään vain kahden arvon syntaksissa.
ylhäältä oikealta ja alhaalta-vasemmalta Onko CSS-tietotyyppi edustaa etäisyysarvoa. Pituuksia voidaan käyttää useissa CSS-ominaisuuksissa, kuten leveys, korkeus, marginaali, täyte, reunuksen leveys, kirjasinkoko ja tekstin varjo."> tai CSS-tietotyyppi edustaa prosenttiarvoa. Sitä käytetään usein määrittämään koko suhteessa elementin pääobjektiin. Monet ominaisuudet voivat käyttää prosenttiosuuksia, kuten leveyskorkeus marginaalin täyte ja font-size.> ilmaisee säteen, jota käytetään reunassa elementin laatikon oikeassa yläkulmassa ja vasemmassa alakulmassa. Sitä käytetään vain kahden ja kolmen arvon syntakseissa.
ylävasemmalla Onko CSS-tietotyyppi edustaa etäisyysarvoa. Pituuksia voidaan käyttää useissa CSS-ominaisuuksissa, kuten leveys, korkeus, marginaali, täyte, reunuksen leveys, kirjasinkoko ja tekstin varjo."> tai CSS-tietotyyppi edustaa prosenttiarvoa. Sitä käytetään usein määrittämään koko suhteessa elementin pääobjektiin. Monet ominaisuudet voivat käyttää prosenttiosuuksia, kuten leveyskorkeus marginaalin täyte ja font-size.> ilmaisee säteen, jota käytetään reunassa elementin laatikon vasemmassa yläkulmassa. Sitä käytetään vain kolmen ja neljän arvon syntakseissa.
yläoikealla Onko CSS-tietotyyppi edustaa etäisyysarvoa. Pituuksia voidaan käyttää useissa CSS-ominaisuuksissa, kuten leveys, korkeus, marginaali, täyte, reunuksen leveys, kirjasinkoko ja tekstin varjo."> tai CSS-tietotyyppi edustaa prosenttiarvoa. Sitä käytetään usein määrittämään koko suhteessa elementin pääobjektiin. Monet ominaisuudet voivat käyttää prosenttiosuuksia, kuten leveyskorkeus marginaalin täyte ja font-size.> ilmaisee säteen, jota käytetään reunassa elementin laatikon oikeassa yläkulmassa. Sitä käytetään vain neliarvoisessa syntaksissa.
alhaalla oikealla Onko CSS-tietotyyppi edustaa etäisyysarvoa. Pituuksia voidaan käyttää useissa CSS-ominaisuuksissa, kuten leveys, korkeus, marginaali, täyte, reunuksen leveys, kirjasinkoko ja tekstin varjo."> tai CSS-tietotyyppi edustaa prosenttiarvoa. Sitä käytetään usein määrittämään koko suhteessa elementin pääobjektiin. Monet ominaisuudet voivat käyttää prosenttiosuuksia, kuten leveyskorkeus marginaalin täyte ja font-size.> ilmaisee säteen, jota käytetään reunassa elementin laatikon oikeassa alakulmassa. Sitä käytetään vain kolmen ja neljän arvon syntakseissa.
alhaalla vasemmalla Onko CSS-tietotyyppi edustaa etäisyysarvoa. Pituuksia voidaan käyttää useissa CSS-ominaisuuksissa, kuten leveys, korkeus, marginaali, täyte, reunuksen leveys, kirjasinkoko ja tekstin varjo."> tai CSS-tietotyyppi edustaa prosenttiarvoa. Sitä käytetään usein määrittämään koko suhteessa elementin pääobjektiin. Monet ominaisuudet voivat käyttää prosenttiosuuksia, kuten leveyskorkeus marginaalin täyte ja font-size.> ilmaisee säteen, jota käytetään reunassa elementin laatikon vasemmassa alakulmassa. Sitä käytetään vain neliarvoisessa syntaksissa.
CSS-tietotyyppi edustaa etäisyysarvoa. Pituuksia voidaan käyttää useissa CSS-ominaisuuksissa, kuten leveys, korkeus, marginaali, täyte, reunuksen leveys, fonttikoko ja tekstivarjo."> Ilmaisee ympyrän säteen kokoa tai ellipsin semi-suur- ja puoli-pikkuakseleita pituusarvoja käyttäen. Negatiiviset arvot ovat virheellisiä. CSS-tietotyyppi edustaa prosenttiarvoa. Sitä käytetään usein määrittämään koko suhteessa elementin pääobjektiin. Monet ominaisuudet voivat käyttää prosenttiosuuksia, kuten leveys korkeus marginaalin täyte ja font-size.> Ilmaisee ympyrän säteen kokoa tai ellipsin semi-suur- ja puoli-pikkuakseleita prosenttiarvoja käyttäen. Vaaka-akselin prosenttiosuudet viittaavat laatikon leveyteen; pystyakselin prosenttiosuudet viittaavat laatikon korkeuteen. Negatiiviset arvot ovat virheellisiä.

Reunuksen säde: 1em/5em; /* ... vastaa: */ border-top-left-radius: 1em 5em; reunus-ylä-oikea-säde: 1em 5em; raja-ala-oikea-säde: 1em 5em; raja-ala-vasen-säde: 1em 5em;

reunan säde: 4px 3px 6px / 2px 4px; /* ... vastaa: */ border-top-left-radius: 4px 2px; reunus-ylä-oikea-säde: 3px 4px; reunus-ala-oikea-säde: 6px 2px; reuna-ala-vasen-säde: 3px 4px;

1,4 / 1,4

Muodollinen syntaksi
= !}

CSS-tietotyyppi edustaa prosenttiarvoa. Sitä käytetään usein määrittämään koko suhteessa elementtiin

Esimerkkejä

reunus: kiinteä 10px;

/* reunus kaareutuu D-kirjaimeen */ reunuksen säde: 10px 40px 40px 10px;

reuna: ura 1em punainen; raja-säde: 2em; tausta: kulta;
reuna: harjanteen kulta;
reunan säde: 13em/3em;
reuna: ei mitään; reunan säde: 40px 10px;
reuna: ei mitään;
raja-säde: 50 %;reuna: katkoviiva; reunan leveys: 10px 4px; reunan säde: 10px 40px;
reunus: katkoviiva;reunan leveys: 2px 4px;
reunan säde: 40 pikseliä;Livenäytteitä
Tekniset tiedotErittely
StatusKommentti
  • CSS-taustat ja reunat -moduulin taso 3 "Raja-säteen" määritelmä kyseisessä eritelmässä. Ehdokassuositus
  • Alkuperäinen määritelmä "Raja-säteen" määritelmä kyseisessä eritelmässä. Ehdokassuositus
  • Alkuarvo "Raja-säteen" määritelmä kyseisessä eritelmässä. Ehdokassuositus
  • border-top-right-radius : kaksi absoluuttista CSS-tietotyyppiä edustavat etäisyysarvoa. Pituuksia voidaan käyttää useissa CSS-ominaisuuksissa, kuten leveys, korkeus, marginaali, täyte, reunuksen leveys, kirjasinkoko ja tekstin varjo."> "Raja-säteen" määritelmä kyseisessä eritelmässä. Ehdokassuositus
AnimaatiotyyppiKommentti
  • border-top-left-radius : CSS-tietotyyppi interpoloidaan todellisina liukulukuina.">pituus , CSS-tietotyyppi interpoloidaan todellisina liukulukuina.">prosentti tai calc();
  • border-top-right-radius : CSS-tietotyyppi interpoloidaan todellisina liukulukuina.">pituus , CSS-tietotyyppi interpoloidaan todellisina liukulukuina.">prosentti tai calc();
  • border-bottom-right-radius : CSS-tietotyyppi interpoloidaan todellisina liukulukuina.">pituus , CSS-tietotyyppi interpoloidaan todellisina liukulukuina.">prosentti tai calc();
  • border-bottom-left-radius : CSS-tietotyyppi interpoloidaan todellisina liukulukuina.">pituus , CSS-tietotyyppi interpoloidaan todellisina liukulukuina.">prosentti tai calc();
Kanoninen järjestysmuodollisen kieliopin määrittelemä ainutlaatuinen ei-moniselitteinen järjestys

Selaimen yhteensopivuus

Tämän sivun yhteensopivuustaulukko on luotu strukturoiduista tiedoista. Jos haluat osallistua tietoihin, käy osoitteessa https://github.com/mdn/browser-compat-data ja lähetä meille vetopyyntö.

Päivitä GitHubin yhteensopivuustiedot

Työpöytämobiili
KromiReunaFirefoxInternet ExplorerOopperaSafariAndroid-verkkonäkymäChrome AndroidilleEdge MobileFirefox AndroidilleOpera AndroidilleSafari iOS:ssäSamsung Internet
PerustukiChrome Täysi tuki 4

Huomautuksia

Täysi tuki 4

Huomautuksia

Huomautuksia
Etuliitteenä

Täysi tuki 1

Etuliitteenä Edge Täysi tuki 12 Täysi tuki 12 Täysi tuki 12
Toteutettu toimittajan etuliitteellä: -webkit-

Huomautuksia

Täysi tuki 4

Huomautuksia

Huomautuksia Firefox Täysi tuki 4 Ennen Firefox 50:tä pyöristetyt kulmat (reunuksen säteellä) hahmonnettiin aina ikään kuin reunustyyli olisi kiinteä . Tällä on korjattu Firefox 50:ssä. Huomautuksia CSS3-standardin mukaiseksi Firefox 4 muuttaa arvojen käsittelyä vastaamaan määrityksiä. Voit

Täysi tuki 1

Etuliitteenä määritä ellipsi reunukseksi mielivaltaisen kokoiselle elementille, jonka reunan säde on 50%; . Firefox 4 myös leikkaa sisältöä ja kuvia pyöristetyistä kulmista, jos : näkyvää ei ole asetettu.
Ei tukea 1-12Toteutettu toimittajan etuliitteellä: -moz-

Huomautuksia

IE Täysi tuki 9

Huomautuksia

Huomautuksia Operassa versiota 11.60 aikaisemmassa versiossa korvatuilla elementeillä, joilla on reunasäde, ei ole pyöristettyjä kulmia.
Safari Täysi tuki 5

Huomautuksia

Täysi tuki 5

Huomautuksia

Huomautuksia Nykyiset Chrome- ja Safari-versiot ohittavat reunasäteen
Täysi tuki 3

Täysi tuki 1

WebView Android Täysi tuki 2

Täysi tuki 1

Etuliitteenä Edge Täysi tuki 12 Täysi tuki 12 Täysi tuki 12
Täysi tuki 2

Täysi tuki 1

Etuliitteenä Edge Täysi tuki 12 Täysi tuki 12 Täysi tuki 12
Edge Mobile Täysi tuki Kyllä Täysi tuki Kyllä Täysi tuki Kyllä

Huomautuksia

Firefox Android Täysi tuki Kyllä

Huomautuksia

Huomautuksia Täysi tuki Kyllä
Ennen Firefox 50:tä pyöristetyt kulmat (reunuksen säteellä) hahmonnettiin aina ikään kuin reunustyyli olisi kiinteä . Tämä on korjattu Firefox 50:ssä.Opera Android Täysi tuki
Safari iOS Täysi tuki KylläElliptiset reunat

Huomautuksia

Firefox Android Täysi tuki Kyllä

Huomautuksia

Huomautuksia Chrome Täysi tuki Kyllä
Ennen Chrome 4:ää vinoviivaa/merkintää ei tueta. Jos määritetään kaksi arvoa, kaikkiin neljään kulmaan piirretään elliptinen reuna. -webkit-border-radius: 40px 10px; vastaa rajan sädettä: 40px/10px; .Edge Täysi tuki 12Firefox Täysi tuki 3.5IE Täysi tuki KylläOpera Täysi tuki Kyllä

Huomautuksia

Firefox Android Täysi tuki Kyllä

Huomautuksia

Huomautuksia Safari Täysi tuki Kyllä
Ennen Safari 4.1:tä kauttaviivaa / merkintää ei tueta. Jos määritetään kaksi arvoa, kaikkiin neljään kulmaan piirretään elliptinen reuna. -webkit-border-radius: 40px 10px; vastaa rajan sädettä: 40px/10px; .WebView Android?Chrome Android Täysi tuki KylläSafari iOS?
Samsung Internet Android Täysi tuki Kyllä4 arvoa 4 kulmaanEnnen Chrome 4:ää vinoviivaa/merkintää ei tueta. Jos määritetään kaksi arvoa, kaikkiin neljään kulmaan piirretään elliptinen reuna. -webkit-border-radius: 40px 10px; vastaa rajan sädettä: 40px/10px; .Chrome Täysi tuki 4Firefox Täysi tuki 3.5IE Täysi tuki KylläFirefox Täysi tuki KylläEnnen Safari 4.1:tä kauttaviivaa / merkintää ei tueta. Jos määritetään kaksi arvoa, kaikkiin neljään kulmaan piirretään elliptinen reuna. -webkit-border-radius: 40px 10px; vastaa rajan sädettä: 40px/10px; .WebView Android?Safari Täysi tuki 5Edge Mobile Täysi tuki KylläFirefox Android Täysi tuki KylläChrome Android Täysi tuki KylläSafari iOS?
reunan säde: 40 pikseliä;Elliptiset reunat

Huomautuksia

Firefox Android Täysi tuki Kyllä

Huomautuksia

Huomautuksia Opera Android Ei tukea Ei
Ennen Chrome 4:ää vinoviivaa/merkintää ei tueta. Jos määritetään kaksi arvoa, kaikkiin neljään kulmaan piirretään elliptinen reuna. -webkit-border-radius: 40px 10px; vastaa rajan sädettä: 40px/10px; .Arvoja ei tueta vanhemmissa Chrome- ja Safari-versioissa (se korjattiin syyskuussa 2010).

Firefox

Legenda Täysi tuki Täysi tuki Ei tukea Ei tukea Yhteensopivuus tuntematon Yhteensopivuus tuntematon Katso toteutusohjeet. Katso toteutusohjeet.

Edellyttää toimittajan etuliitettä tai eri nimeä käyttöä varten.

  • Katso myös
Reunusäteeseen liittyvät CSS-ominaisuudet:

CSS-ominaisuudet

Määritelmä ja sovellus

border-radius CSS-ominaisuuden avulla voit määrittää elementin reunojen muodon. Tämä ominaisuus on lyhenne seuraavista neljästä ominaisuudesta: Fileennin sädettä käytetään koko taustalle tai taustakuva taustaominaisuuden määrittämä (vaikka elementillä ei olisi reunoja). Tarkka sijainti


  1. leikkaus määritetään ja asetetaan taustaleike ominaisuuden arvon mukaan. Kulmien pyöristämistä ei ole.
  2. Oletusarvo on 0 (nolla). ympyrän kaaren tyypin mukaan). /-:s arvo (yhdestä neljään) määritetään CSS-yksiköissä (px, em, cm jne.) ja määrittää r pyöristyksen adius (säde). Kunkin säteen arvot määritetään seuraavassa järjestyksessä: ylävasemmalla(vasen yläkulma), yläoikealla(oikea yläkulma), alhaalla oikealla(oikea alakulma), alhaalla vasemmalla(vasemmalla alhaalla). Jos alhaalla vasemmalla(alhaalla vasemmalla) jätetään pois, niin se on sama kuin yläoikealla(oikea yläkulma). Jos alhaalla oikealla(oikea alakulma) jätetään pois, se on sama kuin ylävasemmalla(vasen yläkulma). Jos yläoikealla(oikea yläkulma) jätetään pois, se on sama kuin ylävasemmalla(vasen yläkulma). Arvot saa ilmoittaa prosentteina.
  3. Oletusarvo on 0 (nolla). kuin ellipsikaari). Arvot määritetään CSS-yksiköissä (px, em, cm jne.). Arvojen määritysjärjestys on seuraava (alempi kuva): arvo/arvot asetetaan (yhdestä neljään) h Pyöristyksen orisontaalinen (vaakasuuntainen) säde ja vinoviivan kautta määritetään / arvo (yhdestä neljään) v ertical (pysty). Arvot saa ilmoittaa prosentteina. Negatiiviset arvot eivät ole sallittuja.

Selaimen tuki

Omaisuus
Ooppera

IExplorer

Reuna
raja-säde5.0
4.0
-webkit-
4.0
3.0
-moz-
10.5 5.0
3.1
-webkit-
9.0 12.0

CSS-syntaksi:

rajan säde: "1-4 pituutta | 1-4 % | 1-4 pituutta tai 1-4 % / 1-4 pituutta tai 1-4 % | alkuperäinen | periy"; /* Säde kohdistetaan kaikkiin neljään kulmaan (kuten ympyräkaari) */ reunan säde: 15px; /* 1. arvo ylhäältä vasen ja alaoikea, toinen arvo ylhäältä oikea ja alhaalla vasen */ reunan säde: 15px 35%; /* 1. arvo ylhäältä vasen, toinen arvo ylhäältä oikealta ja alhaalta vasen, kolmas arvo alhaalta oikealta */ reunan säde: 14px 18px 50%; /* 1. arvo ylhäältä vasen, toinen ylhäältä oikea, kolmas alaoikea, neljäs alavasen */ reunan säde : 22 % 11px 14px 15px;
/ pystysäde - arvo koskee kaikkia neljää kulmaa */ reunan säde : 15px 15% / 15px;/
/* vaakasuuntainen säde 1. arvo ylhäältä vasen ja alhainen oikea, toinen arvo ylhäältä oikea ja alhaalla vasen pystysäde - 1. arvo ylhäältä vasen ja alhainen oikea, toinen arvo ylhäältä oikea ja alhaalla vasen */ reunan säde: 10px 15% / 10px 40px;/
/* vaakasuuntainen säde 1. arvo ylhäällä vasen, toinen arvo ylhäällä oikea ja alavasen, kolmas arvo alhaalla oikea pystysäde - 1. arvo ylhäällä vasemmalla, toinen arvo ylhäällä oikealla ja alhaalla vasen, kolmas arvo alhaalla oikealla */ reunan säde : 15px 15% / 15px;/
reunan säde: 20px 15px 6em / 20px 25px 30%; pystysäde - 1. arvo ylhäältä vasen, toinen ylhäältä oikea, kolmas alaoikea, neljäs alavasen */

reunan säde: 15px 15% / 10px 15em 15px 5em;

JavaScript-syntaksi:

Object.style.borderRadius = "5px"

Kiinteistöjen arvot

CSS-versio

CSS3

Peritty

Ei.

Animoitu

Käyttöesimerkki

Elementin kulmien reunamuodon asettaminen CSS:ssä
luokka = "oranssi" > 50 kuvapistettä
50px 25%
25px 75% / 4em