View Full Version : to or not to specify font sizes
gm1234
08-27-2004, 05:22 AM
Now this is really serious. There are some who say that a font size of 10 to 12 points would be good, some others who say that font sizes should be specified in percentage of 80 to 90% and some others who are against specifying font sizes. I wonder which one would be correct on the web usability point of view. Any help?
This is for a web site???
Base is 10-12 and really depends on the Viewer..
Using a %, makes it resizable as you expand the Window.
What makes me Cry, is the sites that have set there Windows to larger then 800x600.. Its a waste of time, esp with those on 56k and smaller screens.
llbbl
08-27-2004, 06:07 PM
depends on your resolution of the monitor .. 12 is gonna look hella small on a 20 or 21 incher to most people .. better off giving them the choice to change it using CSS . you can have user increase or decrease font size
True TG, but the font will look bigger if they can enlarge it useinf a %.
For standard readabile, 10-12 is great.
Ioman
08-27-2004, 07:47 PM
Moving to the computer software forum.
openbsd-flipp
08-27-2004, 08:12 PM
I think that when designing the page and especcially the font size, that you need to remember that most people do not have the same setup as you. For instance just because you designed and tested the site on a system running XP Pro with a 27in monitor and you are only looking at the page with IE. 6.x.x.x.x that just happens to be the Absolute latest IE version out there does not mean that everyone will be seeing the exact same site that you are.
There are some of us that still have a 13" monitor with only 11.5" viewable that keep it because it works. There are several sites that I go to that I have to switch browsers and even operating systems to view based on poor construction. Then again it also depends on the intention of the website. Are you a news site? An e-commerce site? or are you just a personal site for your eyes only? These questions tend to be more important then most people think.
Thats why I tend to gravatate more tords sites that allow for equal acces to all (graphical)browsers and operating systems. I cannot tell you the ammount of times that I have gotten to the point of refusing to go to a website because out of the 6 browsers that i have installed on the laptop/destop I do not have a single one that allows me to read the page.
What I do now is to create the page and put it on the internal test server and go to several computers at diffrent settings/browser configurations untill I find one that is almost universal in look and feel.
VERY true...
Love those site that My browser Hates..
Have to USE IE, just to see 1/2 of it...REAL pits.
openbsd-flipp
08-27-2004, 09:13 PM
Mozilla used to have this annoying "feature" that unless the font size is stated the it would defult to an 8 point font making most sites almost impossable to read but I do beleive that this has been corrected. If only all websites were w3c compliant and propperly coded then the browser war would turn into as big of a deal as which color is better and just let the users decide what they want to look at your ebpage in but until that happens I guess the designers out there will have to resort to doing things the long way by testing css sheets untill we are so sick of looking at the page we no longer want to publish the damn thing just to make sure that it looks good for 99.9% of viewers. I can't tell you the amount of times that I have scrapped my own website just because I no longer wanted to deal with it in that incarnation any more. That is the only reason my own site looks as crappy as it does
Agree'd..
POINTS on fonts is easy... ITS measured in 1/72...MOSTLY.. computer fonts are abit strange in that realm..
znaps
08-28-2004, 04:49 AM
Have you read this book? http://www.amazon.com/exec/obidos/tg/detail/-/0735712018/qid=1093696205/sr=8-1/ref=pd_ka_1/103-0730048-8055050?v=glance&s=books&n=507846
If not I'd recommend it - it covers that and other aspects of usability.
openbsd-flipp
08-28-2004, 12:40 PM
Thanks for the tip. It should be here tuesday
llbbl
08-31-2004, 11:57 AM
Have you read this book? http://www.amazon.com/exec/obidos/tg/detail/-/0735712018/qid=1093696205/sr=8-1/ref=pd_ka_1/103-0730048-8055050?v=glance&s=books&n=507846
If not I'd recommend it - it covers that and other aspects of usability.
No but I bought this one. Its good.
Designing Web Usability : The Practice of Simplicity
Amazon.com
Creating Web sites is easy. Creating sites that truly meet the needs and expectations of the wide range of online users is quite another story. In Designing Web Usability: The Practice of Simplicity, renowned Web usability guru Jakob Nielsen shares his insightful thoughts on the subject. Packed with annotated examples of actual Web sites, this book sets out many of the design precepts all Web developers should follow.
This guide segments discussions of Web usability into page, content, site, and intranet design. This breakdown skillfully isolates for the reader many subtly different challenges that are often mixed together in other discussions. For example, Nielsen addresses the requirements of viewing pages on varying monitor sizes separately from writing concise text for "scanability." Along the way, the author pulls no punches with his opinions, using phrases like "frames: just say no" to immediately make his feelings known. Fortunately, his advise is some of the best you'll find.
One of the unique aspects of this title is the use of actual statistics to buttress the author's opinions on various techniques and technologies. He includes survey results on sizes of screens, types of queries submitted to search portals, response times by connection type and more. This book is intended as the first of two volumes--focusing on the "what." The author promises a follow-up title that will show the "hows" and, based on this installation, we can't wait. --Stephen W. Plain
Topics covered: Cross-platform design, response time considerations, writing for the Web, multimedia implementation, navigation strategies, search boxes, corporate intranet design, accessibility for disabled users, international considerations, and future predictions.
http://www.amazon.com/exec/obidos/ASIN/156205810X/qid=1093981032/sr=ka-1/ref=pd_ka_1/102-4536452-6729731
llbbl
08-31-2004, 11:59 AM
Mozilla used to have this annoying "feature" that unless the font size is stated the it would defult to an 8 point font making most sites almost impossable to read but I do beleive that this has been corrected. If only all websites were w3c compliant and propperly coded then the browser war would turn into as big of a deal as which color is better and just let the users decide what they want to look at your ebpage in but until that happens I guess the designers out there will have to resort to doing things the long way by testing css sheets untill we are so sick of looking at the page we no longer want to publish the damn thing just to make sure that it looks good for 99.9% of viewers. I can't tell you the amount of times that I have scrapped my own website just because I no longer wanted to deal with it in that incarnation any more. That is the only reason my own site looks as crappy as it does
You can change the default minum text size that is displayed so that Mozilla will always display at least 16 pt.
llbbl
08-31-2004, 12:01 PM
Font size chooser
HTML for the controller defines one surrounding div element and several nested img elements. Three of the img elements are surrounded by links, whose onclick event handlers invoke the changeSizeStyle( ) function. To prevent blank space from occurring between the images, avoid source code line breaks between elements. The following HTML code inserts line breaks inside element tags:
<div id="textSizer">
<img src="fontSizer.jpg" height="18" width="72" alt="Font Sizer"><a
href="" onclick="changeSizeStyle('smallStyle'); return false"><img
class="textSize" src="fontSmall.jpg" height="18" width="18"
alt="Smallest" /></a><a href="" onclick="changeSizeStyle(''); return false"><img
class="textSize" src="fontMedium.jpg" height="18" width="18" alt="Default" /></a><a
href="" onclick="changeSizeStyle('largeStyle'); return false"><img
class="textSize" src="fontLarge.jpg" height="18" width="18" alt="Biggest" /></a>
</div>
The style sheet portion of this solution consists of several distinct style elements (or they could be imported via link elements). Each style element has an id attribute assigned to it that comes into play during script execution. By default, the controller is not rendered, but scripts take care of this, as discussed shortly:
<style id="normalStyle" type="text/css">
body {font-family:Verdana, Helvetica, sans-serif;
font-size:small}
#textSizer {margin-left:80%; display:none}
.textSize {border:1px solid black}
</style>
<style id="sizer" type="text/css" disabled="disabled">
@import url("textSizer.css");
</style>
<style id="smallStyle" type="text/css" disabled="disabled">
@import url("smallFont.css");
</style>
<style id="largeStyle" type="text/css" disabled="disabled">
@import url("largeFont.css");
</style>
Each of the imported style sheets consists of a single rule. One, textSizer.css, is for the controller:
#textSizer {display:block}
The smallFont.css file consists of the following rule:
body {font-size:xx-small}
The largeFont.css file has the following:
body {font-size:large}
The JavaScript portion relies on the cookies.js library (Recipe 1.9) and consists of two functions and a statement that executes one of the functions while the page loads:
<script type="text/javascript" src="cookies.js"></script>
<script type="text/javascript">
// enable/disable style sheet per cookie setting
function setSizeStyle( ) {
if (document.getElementById) {
document.getElementById("sizer").disabled = false;
var styleCookie = getCookie("fontSize");
var styleIDs = ["smallStyle", "largeStyle"];
for (var i = 0; i < styleIDs.length; i++) {
if (styleCookie = = styleIDs[i]) {
document.getElementById(styleIDs[i]).disabled = false;
} else {
document.getElementById(styleIDs[i]).disabled = true;
}
}
}
}
// set active style now, before content renders
setSizeStyle( );
// invoked by clicking on sizer icons
function changeSizeStyle(styleID) {
setCookie("fontSize", styleID, getExpDate(180, 0, 0));
setSizeStyle( );
}
</script>
Users' choices are preserved as a cookie value so that the previous setting is applied on the next visit to the page.
Despite the comparatively small amount of CSS, HTML, and JavaScript code involved for this solution, there is quite a bit going on here so that the application runs well in most modern browsers, yet degrades gracefully in older browsers.
The controller consists entirely of images so that even as the body font size is adjusted, the label's text won't change as well. While the label could be given an inline style attribute to override the more remote style settings, using an image is easier. If the label text were allowed to resize, the position of the clickable images would shift with each click, driving users crazy. While the example here uses a non-positioned element and a percentage length for the left margin, you might find it more appealing to turn it into an absolute-positioned element that is keyed to some other relative-positioned wrapper element in your design.
Style sheet definitions are set up to allow a default font size to govern the page for even the older browsers that may respect style sheets but not the W3C DOM syntax used for style sheet manipulation. Notice that this example does not specify a specific font size in any unit. Font sizing is always a problem in browsers due to their quirky behavior with regard to user settings in the browser and operating system. Using relative sizes suggests that we let users determine their default sizes outside of our application, and they can choose to display your font sets either in a smaller or larger font than the default. This also assumes that more detailed font size settings throughout each page's document are also relative, rather than absolute. Thus, top-level headlines may be specified in em units to derive the desired larger size, but always relative to the surrounding body element's current size. In a way, this approach embraces the flaws of the browser world, leaving the precise display up to the user. Your job as designer is to make sure the content flows appropriately in a variety of sizes.
Three initially disabled style elements provide alternative display characteristics (using the backward-compatible, yet XHTML-friendly syntax for the disabled attribute). For example, while the default style sheet completely hides the size controller, one of the three disabled style sheets has the power—when enabled—to show the controller to the user. The same is true for either of the other body font style sheets. Because all three of these style elements come after the default style sheet, if any one of them is enabled, the last specification for a particular style property wins the competition (according to CSS cascading precedence rules). The job for the script is to enable or disable the extra style sheets as needed. Redirection to an imported style sheet is needed to keep Navigator 4 from applying the style rule, regardless of the disabled attribute setting.
To make the user choice stick on the next visit by the user, the scripts call upon the cookie reading and writing routines from the cookies.js library shown in Recipe 1.9. Make sure that this library is loaded ahead of the scripts that control the font sizing.
Most of the work is handled by the setSizeStyle( ) function. Using the presence of the document.getElementById( ) method in the browser as a threshold point (thus limiting this to IE 5 or later and NN 6 or later), the function immediately enables the style sheet that lets the controller be visible. Next it looks for the existence of the cookie from a previous visit. If it's there, the value (the ID of the style sheet used) becomes the ID of the style sheet to enable, while the other alternate is disabled. There is no need to disable the default style because the new one overrides the font-size property, while leaving all other default settings intact. The mechanism shown in the example allows for additional size settings in case you wish to offer more than the three shown here. Simply add the style element with its own unique ID, and add that ID to the array inside the function, as well as to the parameter of the onclick event handler of the new image's surrounding hyperlink element.
Because the only objects that the setSizeStyle( ) function operates on are style elements defined earlier in the page, the function can run before the body and its objects are part of the current object model. As shown in the preceding script, a single call to setSizeStyle( ) immediately following the function's definition invokes the method as the head portion loads.
When a user clicks on one of the sizer images, the onclick event handler invokes the changeSizeStyle( ) function, passing the ID of the style sheet to apply to the content. This function changes the cookie setting and then calls setSizeStyle( ) to finish the job. The setSizeStyle( ) function becomes a vital module for the entire application.
http://www.amazon.com/exec/obidos/ASIN/0596004672/qid=1093981309/sr=ka-2/ref=pd_ka_2/102-4536452-6729731
vBulletin® v3.7.0, Copyright ©2000-2008, Jelsoft Enterprises Ltd.