Recently, many people have mentioned the issue of how to choose fonts on web pages. Although the problem is small, it is fundamental in front-end development, because current web pages are still dominated by text information, and fonts, as one of the most important parameters of text expression, naturally play a very important role.
Hihi, everyone~ Recently many people have mentioned the issue of how to choose fonts on web pages. Although the problem is small, it is fundamental in front-end development, because current web pages are still dominated by text information, and fonts, as one of the most important parameters of text expression, naturally play a very important role. It is a pity that the importance of fonts has not received enough attention for a long time. Many people's concept of fonts is still stuck at the stage of font-family: "宋体", Arial, Helvetica, serif, but they don't understand why this setting is made, whether this setting is reasonable, etc. Now let me talk about the ins and outs of fonts.
- font-family
Everyone knows that defining fonts in CSS rules is achieved through the font-family rule. I looked through the CSS documentation carefully, but I didn't find any rules that specify a specific font.
Think about ten years ago, you could see code similar to this everywhere:
font face="Frankin Gothic Book">Lorem Ipsumfont>
Almost no one would consider that Frankin Gothic Book is a Windows only font. You can't see the effect of the Frankin Gothic Book font at all on a Mac. Because the system cannot find this font, it uses the Mac's default font for display. As a result, the style of the web page is completely different from the original, and it cannot achieve the effect of Frankin Gothic Book at all. So W3C proposed the concept of font set - a series of similar fonts are formed into a list in order of priority; the browser starts matching from the head of the list until it finds the first available font, and uses The font is displayed.
For example, in the above example, we can create a font set like this:
##span style='font-family: "Franklin Gothic Book","Lucida Grande"'>Lorem Ipsumspan>
- ## Let’s take a look at how the browser renders this text:
- Under Mac: The browser starts searching from the first font in the list - Frankin Gothic Book does not exist in the system, and the search fails. Continue searching for the next font - Lucida Grande. The Lucida Grande font exists in the system, the search is terminated, and the Lucida Grande font is displayed.
- Under Windows: the browser starts from The search starts with the first font in the list - Frankin Gothic Book exists in the system and is displayed using the Frankin Gothic Book font.
But there may be a computer that does not have either the Frankin Gothic Book font or the Lucida Grande font, so it still cannot display the above text correctly. As a result, developers have to continuously add fonts to this font list to adapt to various systems, causing this font set to lose its original function of "organizing similar fonts". So the "Universal font family" was introduced in the font set, which is the serif and sans-serif we often see. I will introduce these two in detail in future articles, as well as some other general font families. Here, we can simply understand them as a "A final substitute font specified by the browser when all specified fonts are invalid."
For example, let’s improve the above sample text:
##span style='font-family: "Franklin Gothic Book","Lucida Grande",sans-serif'>Lorem Ipsumspan>
- ## Let’s take a look at how the browser renders this improved text:
- Under Mac: The browser starts searching from the first font in the list - Frankin Gothic Book does not exist in the system, and the search fails. Continue searching for the next font - Lucida Grande. The Lucida Grande font exists in the system, the search is terminated, and the Lucida Grande font is displayed.
- Some system: The browser starts searching from the first font in the list - Frankin Gothic Book does not exist in the system, and the search fails. Continue searching for the next font - the Lucida Grande font does not exist on the system either. Continue searching for the next font - the universal font sans-serif. The browser uses its default sans-serif font "Arial" to display this text.
- Under Windows: The browser starts searching from the first font in the list - Frankin Gothic Book exists in the system and is displayed using the Frankin Gothic Book font.
Please note two points. First of all, which font the universal font family corresponds to is determined by the browser. In the example above the browser specified Arial as its sans-serif font, but it's entirely possible that another browser specified Helvetica as its sans-serif font. Which font will be ultimately used is unpredictable. Secondly, a universal font family is just a drop-in solution when other fonts in the font set are invalid. Therefore -
Designers should try their best to provide a complete font set to cover all systems as much as possible, and should not rely on universal font families.
Two ways of writing similar to the following are
wrong:
span style="font-family:sans-serif" >Lorem Ipsumspan>
span style="font-family:sans-serif,Arial"> Lorem Ipsumspan>
The mistake with the first way of writing is that it is equivalent to not specifying the font at all, and it is still left to the browser to select the font. Writing is equivalent to not writing.
The error in the second way of writing lies in the order. Because a universal font family should only work when all other fonts in a font set are disabled. Therefore, placing the specified font after the universal font will cause the universal font to be used when the specified font does not match it. Therefore, you shouldmake sure that the universal font is the last one in the font set.
In addition, there are two things to explain here.
First of all, although the rules for which fonts in the font set are used by the browser seem simple, they are actually very tricky. I will make specific instructions in future articles.
Secondly, although the CSS rule name of the font is called font-family, its essence is a font set, not a font family in the printing sense. Font family in printing refers to a series of different intensity combinations of the same typeface, such as Lucida Family (including Lucida Sans, Lucida Sans Typewriter, Lucida Console, Lucida Grande, etc.) and Arial Family (Arial, Arial Black, Arial Rounded MT, etc.) ), but obviously these font families are not suitable for use directly as a font set.
The above is the detailed content of Font application in web design. For more information, please follow other related articles on the PHP Chinese website!

@keyframesandCSSTransitionsdifferincomplexity:@keyframesallowsfordetailedanimationsequences,whileCSSTransitionshandlesimplestatechanges.UseCSSTransitionsforhovereffectslikebuttoncolorchanges,and@keyframesforintricateanimationslikerotatingspinners.

I know, I know: there are a ton of content management system options available, and while I've tested several, none have really been the one, y'know? Weird pricing models, difficult customization, some even end up becoming a whole &

Linking CSS files to HTML can be achieved by using elements in part of HTML. 1) Use tags to link local CSS files. 2) Multiple CSS files can be implemented by adding multiple tags. 3) External CSS files use absolute URL links, such as. 4) Ensure the correct use of file paths and CSS file loading order, and optimize performance can use CSS preprocessor to merge files.

Choosing Flexbox or Grid depends on the layout requirements: 1) Flexbox is suitable for one-dimensional layouts, such as navigation bar; 2) Grid is suitable for two-dimensional layouts, such as magazine layouts. The two can be used in the project to improve the layout effect.

The best way to include CSS files is to use tags to introduce external CSS files in the HTML part. 1. Use tags to introduce external CSS files, such as. 2. For small adjustments, inline CSS can be used, but should be used with caution. 3. Large projects can use CSS preprocessors such as Sass or Less to import other CSS files through @import. 4. For performance, CSS files should be merged and CDN should be used, and compressed using tools such as CSSNano.

Yes,youshouldlearnbothFlexboxandGrid.1)Flexboxisidealforone-dimensional,flexiblelayoutslikenavigationmenus.2)Gridexcelsintwo-dimensional,complexdesignssuchasmagazinelayouts.3)Combiningbothenhanceslayoutflexibilityandresponsiveness,allowingforstructur

What does it look like to refactor your own code? John Rhea picks apart an old CSS animation he wrote and walks through the thought process of optimizing it.

CSSanimationsarenotinherentlyhardbutrequirepracticeandunderstandingofCSSpropertiesandtimingfunctions.1)Startwithsimpleanimationslikescalingabuttononhoverusingkeyframes.2)Useeasingfunctionslikecubic-bezierfornaturaleffects,suchasabounceanimation.3)For


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Zend Studio 13.0.1
Powerful PHP integrated development environment

SublimeText3 Linux new version
SublimeText3 Linux latest version

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

DVWA
Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software
