This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
- Web Page Standards
- Html - How To Edit The Size Of The Submit Button On A Form ...
- Cached
- CSS Buttons - W3Schools Online Web Tutorials
The size
CSSat-rule descriptor, used with the @page
at-rule, defines the size and orientation of the box which is used to represent a page. Most of the time, this size corresponds to the target size of the printed page if applicable.
Size may either be defined with a 'scalable' keyword (in this case the page will fill the available dimensions) or with absolute dimensions.
I just want to know a good, specific button size to make all my little buttons.:) Menu. Standard banner: 468 x 60 standard button: 88 x 31. It's important that your buttons match their contextual style. This could mean.
Syntax
Values
auto
- The user agent decides the size of the page. In most cases, the dimensions and orientation of the target sheet are used.
landscape
- The content of the page is displayed in landscape mode (i.e. the longest side of the box is horizontal).
portrait
- The content of the page is displayed in portrait mode (i.e. the longest side of the box is vertical). This is the default orientation.
<length>
- Any length value (see
<length>
). The first value corresponds to the width of the page box and the second one corresponds to its height. If only one value is provided, it is used for both width and height. <page-size>
- A5
- This matches the standard, ISO dimensions: 148mm x 210mm.
- A4
- This matches the standard, ISO dimensions: 210mm x 297mm. (most frequently used dimensions for personal printing.)
- A3
- This matches the standard, ISO dimensions: 297mm x 420mm.
- B5
- This matches the standard, ISO dimensions: 176mm x 250mm.
- B4
- This matches the standard, ISO dimensions: 250mm x 353mm.
- JIS-B5
- This correspond to the JIS standard dimensions: 182mm x 257mm.
- JIS-B4
- This correspond to the JIS standard dimensions: 257mm x 364mm.
- letter
- This keyword is a equivalent to the dimensions of letter paper in North America i.e. 8.5in x 11in.
- legal
- This keyword is a equivalent to the dimensions of legal papers in North America i.e. 8.5in x 14in.
- ledger
- This keyword is a equivalent to the dimensions of ledger pages in North America i.e. 11in x 17in.
Formal definition
Related at-rule | @page |
---|---|
Initial value | auto |
Computed value | as specified, but with relative lengths converted into absolute lengths |
Formal syntax
Examples
Specifying size and orientation
Nesting inside a @media rule
Specifications
Specification | Status | Comment |
---|---|---|
CSS Paged Media Module Level 3 The definition of 'size' in that specification. | Working Draft | Initial definition |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | Android webview | Chrome for Android | Firefox for Android | Opera for Android | Safari on iOS | Samsung Internet | |
size descriptor | ChromeNo support No | EdgeNo support No | FirefoxNo support No | IENo support No | OperaNo support No | SafariNo support No | WebView AndroidNo support No | Chrome AndroidNo support No | Firefox AndroidNo support No | Opera AndroidNo support No | Safari iOSNo support No | Samsung Internet AndroidNo support No |
Legend
- No support
- No support
See also
You’re reading Font Sizes in UI Design: The Complete Guide. Quickly navigate to other chapters: Intro · iOS · Android · Web · Principles
In this post, we’ll cover what font size to use for a responsive website. First we’ll cover mobile guidelines, then desktop guidelines. Ready?
Mobile Web Typography Guidelines
Picking font sizes for a mobile site is not an exact science. Instead, I will give a few guidelines (with rationales) to help you in your own design process.
1. Body fonts should be about 16px
Understanding that different fonts can be more or less legible even at the exact same size, 16px is a good place to start when choosing your default mobile font size. By “default” or “primary”, I mean the size that most paragraphs, labels, menus and lists are set to. (Let’s assume you’ve already picked a font – and have a good rationale for doing so)
Ultimately, you want the body text on your phone (when held at a natural distance) to be as readable as the text in a well-printed book (when held at a natural – usually slightly farther – distance).
One process for getting there:
- Start with 16px
- Consider going smaller if you have (A) have an interaction-heavy page or (B) a font with particularly large, easy-to-read characters (like Proxima Nova in the image above)
- On the other hand, you can be much more liberal with exploring sizes larger than 16px, but in particular if (A) you have a text-heavy page or (B) a font that is particularly difficult to read at a given size (like Futura above)
While there’s some subjectivity to the best primary font size to use on the page, the next rule is more hard and fast.
2. Text input sizes should be at least 16px
This is important. If you’re designing a website or app that can be viewed on mobile devices, there is only strict rule: Use a text input font size of at least 16px.
If your text inputs have a smaller font size than that, iOS browsers will zoom in on the left side of the text input, often obscuring the right side and forcing the user to manually zoom out after using the text box.
Video or it didn’t happen, right?:
This is a strong reason to make the body font size 16px or larger as well. It can look awkward to have larger form control text than paragraph text ☝️
3. Secondary text should be about 2 sizes smaller than your paragaph text
For secondary text – like lesser labels, captions, etc. – use a size a couple notches smaller – such as 13px or 14px. I do NOT recommend going down just one font size, since then it’s too easy to confuse with normal text. In addition, when text is less important, you want to style it so that you’re clearly communicating the lesser importance – often using, say, a lighter shade of gray (something about 70% as strong is a good place to start).
4. Always view your designs on an actual device
The gold standard of choosing mobile font sizes is to view your designs on an actual device. I can’t recommend this practice highly enough, since the feel of an mobile app design on your laptop screen is way different than when you’re holding it in your hand. As a beginning designer, I was shocked almost every time I opened on mobile a page I designed on desktop. Font sizes, spacing… everything was off. So use Sketch Mirror or Figma Mirror or whatever app makes sense for you, but view your designs on-device.
5. Be familiar with Material Design and iOS standards
It never hurts to know what the biggest design systems in town are doing. For instance:
- Material Design’s default font size is 16px Roboto and secondary font size is 14px (more on Material Design styling)
- iOS’s default font size is 17px SF Pro and secondary font size is 15px (more on iOS styling)
Do you need to copy them? Nope – but it never hurts to have a baseline to compare to.
Desktop Web Typography Guidelines
When picking a base size for a desktop website or web app, you can break down most designs into one of two types:
- Text-heavy pages. Articles, blogs, news, etc. These are pages where the primary purpose the user has on the page is to read. There is very little in terms of interaction – perhaps just clicking a few links.
- Interaction-heavy pages. Apps that involve more hovering, clicking, searching for an item in a list or table, editing, typing, etc. There may be plenty of text on the page, but it’s not stuff you read straight through like a book.
Need an example or two? This page is a text-heavy page. Your Facebook feed is an interaction-heavy page. Each has slightly different concerns, so I’ll handle them separately. Keep in mind that both will probably be useful. The “About” page of a crazy web app is still text-heavy. The “Contact” page on a vanilla blog is still interaction-heavy.
Text-Heavy Pages
Long story short, for text-heavy pages, you want larger font sizes. If folks are reading for long periods of time, be nice: don’t make them strain their eyes. Now, each font is different, even at the same size, but we’re talking:
- 16px – absolute minimum for text-heavy pages
- 18px – a better font size to start with. You’re not printing out a single-spaced Word document; you’re writing for people sitting a couple feet from their decade-old monitors.
- 20px+ – may feel awkwardly large at first, but is always worth trying out in your design app. The best-looking text-heavy site on the web, Medium.com, has a default article text size of 21px.
Similar to what I mentioned in the mobile web section, there’s a great rule of thumb here: your website’s text (viewed at typical monitor distance) should be as readable as a well-made book (viewed at typical book-holding distance). This is actually a really annoying and dorky exercise to perform, because you have to shut one eye and squint at a book you’re holding up like a moron. But find a nice, solitary place, and sanity-check: is my font size readable even at a couple feet? Even adjusting for my young and powerful eyes? OK, you get the idea.
Interaction-Heavy Pages
Now, for interaction-heavy pages, smaller text sizes are perfectly acceptable. In fact, depending on the amount of data your user is taking in at once, even 18px text is uncomfortably large. Look at your (web) inbox, look at twitter, look at any apps you use that require scanning over reading, look at apps that show you data – you’re going to be hard-pressed to find sustained paragraphs of 18px text. Instead, 14px-16px is the norm. But there won’t be just one font size. There will likely be smaller sizes for less important things, and larger sizes for more important things (titles and subtitles and sub-subtitles, etc.), and it’ll all be blended together in a giant hodgepodge.
Now here’s the important part: for any interaction-heavy page, the font sizes are driven LESS by some top-down decrees (“type scales”, I’m looking at you) than the specific needs of each piece of text and the interplay between them.
For example:
- The event names are in 12px medium, which is a font style entirely absent from the Material Design guidelines. Yet given they need to fit 7 columns on a screen that’s only 1440px wide, and many events are quite short, this is an ideal font size choice. Any smaller and legibility suffers. Any bigger and the event names will be cut off too frequently. Design is tradeoffs, kid. If you can’t name the tradeoff you’re making, you’re probably making it in the wrong place.
- The hours of the day labels (“12pm”, “1pm”, etc) are font-size: 10px. That’s another style missing entirely from the Material Design guidelines. Yet horizontal space is at a premium. Each event is labelled with its start time anyways. Why not make the left-hand labels smaller?
- The dates are 48px. Again, not found in Material Design guidelines. Now, in this case, I don’t know why they didn’t use 45px, which is the official “Display 2” size, but I’ll say this: if it had been me designing, I probably would have made the 48px size bold, and here, bold would be an issue. It would attract too much attention. So I would’ve modified the style anyways.
Web Page Standards
When you’re designing your interaction-heavy desktop website, keep this in mind. You need to modify text styles on a case-by-case basis. Consistency is wonderful, but no one gets mad when a font size is one px too small – they get mad when they can’t easily find what they’re looking for.
Html - How To Edit The Size Of The Submit Button On A Form ...
As Few Font Sizes as Possible
One of the single biggest typographical mistakes from beginning UI designers is to use way too many font sizes. Even the most interaction-heavy pages can typically look just fine with about 4 font sizes total.
Let’s break it down:
- Header font size. This is the biggest font size on your page. Use it for the headline or section titles. If you have both a headline and section titles, you should almost certainly be using two different font sizes here.
- Default font size. This is the most common font size on your page, and should be used for all body text – as well as most controls, like text boxes, dropdowns, buttons, and menus. The key header mistake beginning designers make here is to use many font sizes for elements that should all be one font size.
- Secondary font size. This is a font size – usually about 2pt smaller than your default font size – that you use for less-important details of the site. Supporting information and stats, sometimes captions, etc.
- Tertiary/caption/label/wildcard font size. Very often you will need one more font size. Sometimes it’s because your information is so hierarchical you need a tertiary style even more subdued than the secondary style. Other times, you might use uppercase for labels or buttons – and because of the increased visual weight of the uppercase, you want to use a slightly smaller size for the text itself (remember: balance up-pop vs. down-pop). So this fourth font size is a bit of a wildcard. Not every design needs it, but many do. My only warning: as much as possible, default to consistency.
Make sense? Let’s move on.
Continue to Chapter 4: Principles & Resources
One Final Note 😎
If this is your first time here, you might also be interested in:
- Learn UI Design, my full-length online video course on user interface design
- The Design Newsletter, a 40,000+ person newsletter with original design articles aimed at giving you tactical advice to improve your UX/UI skills.
Cached
Some people have some really nice stuff to say about the newsletter.
Thank you for your newsletter. It’s possibly the best newsletter I’ve received since 1999, when I started freelancing.
Tricia Littlefield
Founder, TheSimpleWeb
Each time I receive an email from you, I'm like ‘Damn, this is a long email! No way will I read all of this’, then I began to read and I'm like ‘Damn, this is so freaking brillant’ and read it all.
Jean-Philippe
UX Strategist, Freelance
CSS Buttons - W3Schools Online Web Tutorials
Over 40,000 subscribed.
No spam. Unsubscribe anytime.