๋ฉ‹์Ÿ์ด ์‚ฌ์ž์ฒ˜๋Ÿผ

Box-decorating with CSS, HTML

youngdeok 2023. 3. 5. 15:58

์ฃผ๋ง๋™์•ˆ ๋ฉ‹์Ÿ์ด ์‚ฌ์ž์ฒ˜๋Ÿผ ํ”„๋ก ํŠธ ์—”๋“œ ์Šค์ฟจ์—์„œ ๊ฐ„๋‹จํ•œ ๊ณผ์ œ๋ฅผ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค!.

๋ฐ•์Šค ๊พธ๋ฏธ๊ธฐ ์ธ๋ฐ์š”.

ํ•œ๋ฒˆ ๋“ค์–ด๊ฐ€ ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.


1๋ฒˆ์งธ ๋ฐ•์Šค ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด ๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

2๋ฒˆ ์งธ ์‚ฌ์ง„์„ ๋ณด์‹œ๋ฉด 3๊ฐ€์ง€์˜ ์ƒ‰์„ ๊ฐ–๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒ‰์— ๊ฒ€์€ ํ…Œ๋‘๋ฆฌ๋Š” border๋ฅผ ์ค˜์„œ ๋งŒ๋“ค ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™์€๋ฐ ์ค‘๊ฐ„์— ํšŒ์ƒ‰ ๋ถ€๋ถ„์€ ์–ด๋–ป๊ฒŒ ํ• ์ง€ ๊ฐ์ด ์ž˜ ์˜ค์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ๊ณ ๋ฏผํ•œ ๊ฒฐ๊ณผ div์•ˆ์— div๋ฅผ ๋‘ฌ์„œ ๋”ฐ๋กœ border๋ฅผ ์ฃผ๋Š”๊ฒƒ ๋ฐ–์— ์ƒ๊ฐ์ด ๋‚˜์ง€ ์•Š์•„ ๊ทธ๋Ÿฐ ์‹์œผ๋กœ ๊ตฌํ˜„ํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค.

HTML & CSS

.Fbox {
            border: 5px solid black;
            background-color: #343F50;
}
.innerBox {
            box-sizing: border-box;
            border-top: 3px solid #4A5568;
            border-left: 3px solid #4A5568;
}
<div class="Fbox">
        <div class="innerBox">
            <p>Helloโœ‹</p>
        </div>
</div>

 

์ถ”๊ฐ€

div ํ•˜๋‚˜๋งŒ ์จ์„œ ํ•ด๊ฒฐํ•˜๋Š” ๋ฒ•

์™ธ๋ถ€์˜ ๊ฒ€์€ ํ…Œ๋‘๋ฆฌ๋ฅผ ๊ทธ๋ฆผ์ž๋กœ ๋‚ด๋ถ€์˜ ์™ผ์ชฝ๊ณผ ์œ„์˜ ์„ ์€ border๋ฅผ ํ†ตํ•ด ๊ฐ’์„ ์ค€๋‹ค.

div {
            display: flex;
            justify-content: center; 
            align-items: center;
            width: 200px;
            height: 100px;
            background: #343F50;
            box-shadow: 0px 0px 0px 10px rgba(0, 0, 0, 1);
            border-top: 10px solid #4A5568;
            border-left: 10px solid #4A5568;
}

๋‘๋ฒˆ์งธ ๋ฐ•์Šค

2๋ฒˆ์งธ ๋ฐ•์Šค ์—ญ์‹œ border dashed๋ฅผ ์ฃผ๋ฉด ํ•ด๊ฒฐ์ด ๋  ๊ฒƒ ๊ฐ™์•˜์œผ๋‚˜

๊ฒฐ๊ณผ๋Š”...

๋ฐฑ๊ทธ๋ผ์šด๋“œ ์ปฌ๋Ÿฌ๊ฐ€ border์™€ ๊ฒน์ณ ๋ฒ„๋ฆฝ๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ ์—ญ์‹œ div๋ฅผ 2๊ฐœ ์‚ฌ์šฉํ•ด์„œ ๋งŒ๋“ค์—ˆ๋Š”๋ฐ์œ .

 

HTML & CSS

.borderbox {
            margin-top: 50px;
            border: 5px dashed #E3D2FC;
            border-radius: 100px;
}
.Sbox {
            border-radius: 100px;
            background: linear-gradient( to right, #823DED, royalblue );
}
<div class="borderbox">
        <div class="Sbox">
            <p>Helloโœ‹</p>
        </div>
</div>

๋ฐ–์— ์žˆ๋Š” ๋ฐ•์Šค ์ฆ‰, ๋ถ€๋ชจ ๋ฐ•์Šค์—๋‹ค๊ฐ€ border๋ฅผ ์ค˜์„œ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. ์œ„์— ๋ณด๋ฉด ๊ฒน์น˜๋Š” ์ฝ”๋“œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. border-radius๋Š” ์ƒ์†์ด ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ์— ์–ด์ฉ”์ˆ˜ ์—†์ด 2๋ฒˆ ๋„ฃ์–ด ์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค ๐Ÿซฃ.

์ƒ์†๋˜๋Š” ํ”„๋กœํผํ‹ฐ
font-family, font-size, font-weight, line-height, visibility, opacity, color, line-height, text-align, white-space, list-style

์ƒ์†์ด ๋˜์ง€์•Š๋Š” ํ”„๋กœํผํ‹ฐ
margin, padding, border , box-sizing, display, background, vertical-align, text-ecoration, top/right/bottom/left, position, overflow, width/height

 

์ถ”๊ฐ€

background-clip: padding-box ์†์„ฑ์„ ์‚ฌ์šฉํ•˜๋ฉด div ํ•˜๋‚˜๋งŒ์„ ์‚ฌ์šฉํ•˜์—ฌ ํŒจ๋”ฉ์„ ๊ณ‚์น˜์ง€ ์•Š๊ฒŒ ์œ„์น˜์‹œํ‚ฌ์ˆ˜ ์žˆ๋‹ค.

div {
            display: flex;
            justify-content: center; 
            align-items: center;
            width: 200px;
            height: 100px;
            border-radius: 100px;
            background: linear-gradient( to right, #823DED, royalblue );
            border: 7px dashed #E3D2FC;
            background-clip: padding-box;
}

3๋ฒˆ์งธ ๋ฐ•์Šค

๋ฐ•์Šค๋ฅผ ๋ณด๋ฉด 1์‹œ 4์‹œ 7์‹œ ๋ฐฉํ–ฅ์˜ ๊ผญ์ง“์ ๋“ค์ด ์ง๊ฐ์ด ์•„๋‹Œ ๋‘ฅ๊ทธ๋Ÿฐ ๊ณก์„ ์˜ ๋ชจ์–‘์„ ๋„๊ณ  ์žˆ๊ณ , ๋Œ€๊ฐ์„  ์•„๋ž˜๋กœ๋Š” ๊ทธ๋ฆผ์ž๋ฅผ ๋„๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹คํ–‰ํžˆ ์ด ์นœ๊ตฌ๋Š” ๊ฐ„๋‹จํ•˜๋‹ต๋‹ˆ๋‹ค. border-radius์˜ ์‚ฌ์šฉ๋ฒ•๊ณผ box-shadow๋งŒ ์•Œ๋ฉด ํ•ด๊ฒฐ ํ•˜์‹ค์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

.Tbox {
            margin-top: 50px;
            border: 5px solid #E8E8E8;
            border-radius: 0px 100px 100px 100px;
            box-shadow: 5px 5px 10px #E8E8E8
}
<div class="Tbox">
        <p class="blackFont">Helloโœ‹</p>
</div>

์ฝ”๋“œ์—ญ์‹œ ๊ฐ„๋‹จํ•˜์ฃ ~


๊ตฌํ˜„ ์ด๋ฏธ์ง€

๋” ์ข‹์€ ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค๋ฉด ์•Œ๋ ค์ฃผ์„ธ์š”!!!