Рисование полукруглой формы в CSS - PullRequest
2 голосов
/ 08 ноября 2019

Я пытаюсь повторить форму

enter image description here

Когда я использую округленные формы в CSS, это выглядит несколько иначе:

.shape{
  display: inline-block;
  text-align: center;
  line-height: 18px;
  border-radius: 9px 9px 9px 9px;
  color: #000000;
  padding-left: 6px;
  padding-right: 6px;
  font-weight: bold;
  font-family: sans-serif;
}
.shape.orange{
  background-color: #FF931B;
}
<span class="shape orange">CC6</span>

Как мне получить правильную форму?

1 Ответ

3 голосов
/ 08 ноября 2019

Это можно сделать с помощью radial-gradient

.shape{
  display: inline-block;
  font-size:50px;
  line-height:1.5em;
  padding:0 0.4em;
  font-weight: bold;
  font-family: sans-serif;
  background: 
    radial-gradient(100% 50% at right, #FF931B 98%,transparent 100%) left,
    radial-gradient(100% 50% at left , #FF931B 98%,transparent 100%) right,
    #FF931B content-box; /*Don't color the padding to keep it for radial-gradient*/
  background-size:0.4em 100%; /* Width same as padding and height 100%*/
  background-repeat:no-repeat;
}
<span class="shape">CC6</span>
<span class="shape" style="font-size:70px">CC6</span>
<span class="shape" style="font-size:15px">CC6</span>

Или с border-radius, как показано ниже:

.shape{
  display: inline-block;
  font-size:50px;
  line-height:1.5em;
  padding:0 0.4em;
  font-weight: bold;
  font-family: sans-serif;
  background:  #FF931B;
  border-radius:0.4em/50%;
}
<span class="shape">CC6</span>
<span class="shape" style="font-size:70px">CC6</span>
<span class="shape" style="font-size:15px">CC6</span>

CSS Semi rounded shape

...