Skip to content
CoDdleCoDoodle home
CSS ArtMay 18, 20266 min read

CSS Art for Beginners: How to Think in Shapes

Before you write a single property, see your drawing as circles, ovals, and rounded rectangles stacked together. Once the shapes click, the CSS almost writes itself.

cssbeginnershapes

Squint before you type

The single most useful CSS-art habit costs nothing: squint at the thing you want to draw. The details blur away and you're left with a few soft blobs. That blob map is your shopping list before you open the editor.

A rice ball is a rounded triangle. A cloud is three overlapping rounded rectangles. A face is two dots and a half-circle. If you can name the shapes out loud, the CSS already half-writes itself.

border-radius is your sculpting tool

One property does most of the shaping. The fancy eight-value form — four numbers, a slash, four numbers — rounds the horizontal and vertical corners separately, so a plain box can bulge into a dome, a teardrop, or a bean.

Wiggle the numbers in the Playground and watch the shape squish in real time. You don't need to memorize the syntax; you need to feel it.

.blob {
  border-radius: 50% 50% 46% 46% / 76% 76% 30% 30%;
}

Stack, don't carve

CSS art is additive. You almost never cut a shape out of another shape — you stack simpler shapes on top and let the outline do the talking. A nori wrap is a separate rectangle hugging the bottom of the rice, not a bite taken out of it.

This is why source order matters more than z-index most of the time. Draw the back layers first, the front layers last.

Position the face by percentage

Eyes, mouths, and blush are just absolutely-positioned dots inside a positioned parent. Use percentages, not pixels — then when you resize the whole doodle, the face comes along for free instead of drifting off to the corner.

More from the blog

Keep reading

CSS Art5 min read

Drawing Cute Characters with Only Divs

No SVG, no canvas — just divs, border-radius, and a little patience. Here's how a boxy face turns soft and friendly.

csscharacters
Read note
SVG7 min read

When to Use SVG Instead of CSS

CSS is great until you need a curve that isn't a circle. Learn when to reach for SVG paths instead of forcing border-radius.

svgcsscomparison
Read note
Canvas8 min read

How to Build a Tiny Canvas Scene

A canvas element and a few lines of drawing code can hold a whole little world. We build it one shape at a time.

canvasjsbeginner
Read note

Hands on

Want to try the idea?

Pick a spot to sketch it out — nothing you make here is permanent.