.../articles/
Getting Along with Design Data, Part 2

Getting Along with Design Data, Part 2

2019.09.05

This article is also written so it can be used as material for wallhaus, a community for learning design that I'm personally involved with. Since there are many beginners there, I've tried to keep it approachable.

Part 1: Getting familiar with design data

What does "responsive" mean?

"Responsive" is an adjective, so tacking on a phrase like "-taiou" (support for) on top of it feels distinctly like Japanese-English, but the general understanding is something like switching and optimizing how a website is displayed depending on screen resolution. "Screen resolution" here is used a bit loosely too — just think of it as screen size.

Design comps are usually created with PC and SP (smartphone) versions in mind as separate things, but in practice, it's become less common to simply switch designs based on whether the viewing device is a PC or a smartphone.

The reason is that device categories and screen sizes have become much more varied. For example, an iPad Pro is almost the same size as a PC. Given that, screen size alone no longer equals device type. So design and markup need to respond to screen size itself.

What matters most in design is how you set up your rules. You need to anticipate things like how image sizes are specified and how lines will wrap when the layout stretches or shrinks.

Points I personally pay attention to for responsive design

  • Setting breakpoints
  • Line wrapping caused by a narrower text display width
    • Whether line spacing is specified for multi-line text
    • Whether to truncate text
  • Whether image aspect ratios break
    • If they do break, how to handle it (how to crop)
  • How to display elements made up of multiple columns
    • Elements arranged side by side are basically re-stacked vertically
  • How to handle things like hover effects that don't work on SP
    • Avoid link treatments that only make sense on hover
  • Images containing text information
    • Don't just reuse the PC version, which is typically shown in landscape orientation, as-is for the SP version

A lot of this concerns layout, but font size is another thing worth watching.

Where exactly is that whitespace attached to?

I've been talking about the importance of anticipating that things will stretch and shrink, but I haven't given a concrete example yet, so let's do that now.

It's a subtle difference

Both A and B are common-looking button-over-image layouts. The difference is that: ・A's button size matches the width of the image ・B's button size matches the length of the button's label That's the difference.

This difference becomes significant when doing responsive design. It changes depending on how you think about the whitespace on either side of the button label (the text "Button").

Things worth considering include:

  • Is button A's width matched to the image's width?
    • If so, what is the image's width matched to — is it a fixed size, or does it expand to fill the screen width?
  • Do the image and button have a maximum width?
  • For button B, what happens if the label text is longer than the content area can hold?

and so on.

If you can pin down whether the whitespace and content size change to match the screen size, or whether the whitespace is attached around the content and the content size changes accordingly, it becomes much easier to think through the implementation.

More complex structures require more careful design consideration, but if you organize things and turn them into rules, there usually aren't that many things you actually need to specify at implementation time.


A bit of a practical follow-up. I'd like to write a bit more, another time, summarizing points to keep in mind both when creating data and when reading it.


Photo of Cloud Gate by Kapoor: Photo by Sawyer Bengtson on Unsplash

written by

.../article/

Articles

All articles

From Firebase to Vercel, Contentful to microCMS — a migration log written with Claude Code

From Firebase to Vercel, Contentful to microCMS — a migration log written with Claude Code

We moved our corporate site's hosting and CMS, and made it bilingual along the way. The constraints we only found by running against real data were more useful than the migration itself, so this post focuses on where we got stuck.

Can't Read POST Data with Firebase Functions × Remix?

Can't Read POST Data with Firebase Functions × Remix?

How to read POST data from a Remix action when running on Firebase Functions.

Generative AI for Executives and Leaders: An Approach to Self-Driven DX

Generative AI for Executives and Leaders: An Approach to Self-Driven DX

Building a structure where executives and leaders themselves can identify issues and evaluate solutions using generative AI. We introduce how combining this with our hands-on support dramatically improves both the quality and speed of digital transformation.

Deploying a Monorepo Next.js App (App Router) to AWS Amplify

Deploying a Monorepo Next.js App (App Router) to AWS Amplify

Notes on the obstacles we hit while deploying a Next.js app managed in a monorepo to AWS Amplify.

Keeping Production Running Smoothly with Remote Work and Online Meetings [Documentation]

Keeping Production Running Smoothly with Remote Work and Online Meetings [Documentation]

Many production companies have adopted remote work as a result of the pandemic, and we are one of them.

Designing an E-Commerce Site That Sells: How to Find Great Reference Examples

Designing an E-Commerce Site That Sells: How to Find Great Reference Examples

There is no single formula for e-commerce design that sells. Driving revenue requires a solid concept, and getting to that concept requires thorough research.

Productivity Tools We Recommend as a Production Company, Including Services That Work Well Solo

Productivity Tools We Recommend as a Production Company, Including Services That Work Well Solo

With remote work becoming the norm during the COVID-19 pandemic, our team now works from home most days of the week.

We Released Thought Recorder, a Figma Plugin for Keeping a Commit History of Your Designs

We Released Thought Recorder, a Figma Plugin for Keeping a Commit History of Your Designs

We hope this helps web designers who work in Figma. Read on for how to use it.

How to Build an E-Commerce Site, and Which Platforms We Recommend

How to Build an E-Commerce Site, and Which Platforms We Recommend

Shopping online for fashion, appliances, and even groceries is now routine. With the pandemic accelerating the shift, we receive a steady stream of questions about which platform to use and how much it costs.

Generating FastAPI Schema Classes from OpenAPI

Generating FastAPI Schema Classes from OpenAPI

We chose FastAPI, a relatively modern framework, for a Python API project. FastAPI can generate an OpenAPI definition from your backend code, but here we do the opposite: generating FastAPI schema classes from an OpenAPI definition prepared in advance.

View all articles

Contact us