cssでオシャレなボタンや吹き出しを作るTips
:root {
--main: #0b0e2e;
--sub: #a5a55e;
--acc: #d1d1d1;
--size: 10px;
}
color: var(–main) と書くとcolor: #0b0e2eと同じになります。
ボタン
<button id="button-pt1">Button</button>
button {
width: calc(var(--size) * 10);
height: calc(var(--size) * 4);
border-radius: calc(var(--size) / 2);
}
#button-pt1 {
background-color: var(--main);
margin: 0.5em;
border: 1px var(--sub) dashed;
box-shadow: 0 0 0 0.4em var(--main);
color: var(--acc);
}
<button id="button-pt1">Button</button>
#button-pt2 {
margin: 0.4em;
height: calc(var(--size) * 4.4);
border: calc(var(--size)/2) solid transparent;
border-image:
repeating-linear-gradient(-45deg, var(--sub), var(--sub) calc(var(--size) / 2), transparent 0, transparent var(--size))
5;
}
吹き出し
This is a Baloon
<div id="baloon-pt1">This is a Baloon</div>
#baloon-pt1 {
border: calc(var(--size)/2) solid var(--main);
border-radius: calc(var(--size) / 4);
padding: calc(var(--size)/2) var(--size);
margin: calc(var(--size)/2) var(--size);
}
#baloon-pt1::after {
content: '';
display: block;
position: absolute;
height: var(--size);
width: 0.1rem;
border: var(--size) solid transparent;
border-top: var(--size) solid var(--main);
margin-top: var(--size);
}
This is second Baloon
<div id="baloon-pt2">This is second Baloon</div>
#pt2 {
border: calc(var(--size)/2) solid transparent;
margin: calc(var(--size)/2) var(--size);
padding: calc(var(--size)/2) var(--size);
border-image:
repeating-linear-gradient(-45deg, var(--sub), var(--sub) calc(var(--size) / 2), transparent 0, transparent var(--size)) 5;
}
#pt2::after {
content: '';
display: block;
position: absolute;
height: var(--size);
width: 0.1rem;
border: var(--size) solid transparent;
border-top: var(--size) solid var(--sub);
margin-top: var(--size);
}