Styling Web Pages with CSS: Visual QuickProject Guide 9780321555571, 0321555570, 9780321573025, 0321573021

This text provides a solid introduction from which Web designers can build their CSS knowledge. Succinct and to the poin

745 186 5MB

English Pages 131 [145] Year 2009

Report DMCA / Copyright

DOWNLOAD FILE

Polecaj historie

Styling Web Pages with CSS: Visual QuickProject Guide
 9780321555571, 0321555570, 9780321573025, 0321573021

Table of contents :
Cover......Page 1
Contents......Page 6
introduction......Page 8
what you’ll create......Page 9
how web pages work......Page 10
how this book works......Page 11
useful tools......Page 12
the next step......Page 13
1. introducing css......Page 14
choose your tools......Page 15
create a stylesheet......Page 16
write css rules......Page 17
create a class......Page 19
define an id......Page 20
comment your css......Page 21
using internal styles......Page 22
use external stylesheets......Page 23
understand the cascade......Page 25
extra bits......Page 26
2. layout and positioning......Page 28
block vs inline tags......Page 29
the box model......Page 30
positioning boxes......Page 32
understand float......Page 34
choose your sizing......Page 35
create the xhtml......Page 36
style the divs......Page 41
create faux columns......Page 45
extra bits......Page 47
3. styling text......Page 50
understand css fonts......Page 51
style text......Page 54
style headings......Page 56
extra bits......Page 57
4. work with images......Page 60
prepare images......Page 61
float images......Page 63
place images......Page 65
add background images......Page 68
extra bits......Page 70
5. make menus......Page 72
style the sidebar......Page 73
create the buttons......Page 75
add rollover effects......Page 77
extra bits......Page 80
6. style specific elements......Page 84
style a table......Page 85
add fancy headings......Page 92
use special selectors......Page 93
extra bits......Page 94
7. work better with browsers......Page 96
adapt for IE......Page 97
use browser extensions......Page 103
add print stylesheets......Page 106
extra bits......Page 109
8. add to your site......Page 112
create horizontal menu......Page 113
bring back left column......Page 117
add top ad banner......Page 119
add third column......Page 121
add fly-out menus......Page 124
add horizontal fly-outs......Page 128
create standard menus......Page 130
extra bits......Page 131
9. troubleshoot and learn more......Page 132
validate your css......Page 133
get debugging tools......Page 134
debug css......Page 135
learn more about css......Page 137
extra bits......Page 138
C......Page 139
F......Page 140
K......Page 141
P......Page 142
T......Page 143
Z......Page 144

Citation preview

styling web pages with CSS Visual QuickProject Guide

by Tom Negrino and Dori Smith

Visual QuickProject Guide

Styling Web Pages with CSS Tom Negrino and Dori Smith Peachpit Press 1249 Eighth Street Berkeley, CA 94710 510/524-2178 510/524-2221 (fax) Find us on the Web at: www.peachpit.com To report errors, please send a note to [email protected] Peachpit Press is a division of Pearson Education Copyright © 2009 by Tom Negrino and Dori Smith Editor: Nancy Davis Production: Becky Winter Compositor: David Van Ness Cover design: Peachpit Press, Aren Howell Cover production: Mike Tanamachi Cover photo credit: Juho Kuva / iStock image Interior design: Elizabeth Castro Indexer: Emily Glossbrenner, FireCrystal Communications

Notice of Rights All rights reserved. No part of this book may be reproduced or transmitted in any form by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written permission of the publisher. For information on getting permission for reprints and excerpts, contact [email protected].

Notice of Liability The information in this book is distributed on an “As Is” basis, without warranty. While every precaution has been taken in the preparation of the book, neither the authors nor Peachpit Press shall have any liability to any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly by the instructions contained in this book or by the computer software and hardware products described in it.

Trademarks Visual QuickProject Guide is a registered trademark of Peachpit Press, a division of Pearson Education. All other trademarks are the property of their respective owners. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and Peachpit Press was aware of the trademark claim, the designations appear as requested by the owner of the trademark. All other product names and services identified throughout the book are used in an editorial fashion only and for the benefit of such companies with no intention of infringement of the trademark. No such use, or the use of any trade name, is intended to convey endorsement or other aȗliation with this book. ISBN 13: 978-0-321-55557-1 ISBN 10: 0-321-55557-0 9 8 7 6 5 4 3 2 1 Printed and bound in the United States of America

To Nancy Davis, our beloved editor and friend, for making our work better (way better!) for more than a decade.

And in memoriam to Nancy’s editing partner, Emma Mingus Davis Hack, 1991–2008.

This page intentionally left blank

contents introduction what you’ll create how web pages work how this book works

vii viii ix x

useful tools the next step

1. introducing css choose your tools create a stylesheet write css rules create a class define an id

1 2 3 4 6 7

comment your css using internal styles use external stylesheets understand the cascade extra bits

2. layout and positioning block vs inline tags the box model positioning boxes understand float choose your sizing

16 17 19 21 22

8 9 10 12 13

15 create the xhtml style the divs create faux columns extra bits

3. styling text understand css fonts style text

xi xii

23 28 32 34

37 38 41

style headings extra bits

43 44

v

contents 4. work with images prepare images float images place images

47 48 50 52

add background images extra bits

5. make menus style the sidebar create the buttons

59 60 62

add rollover eȔects extra bits

6. style specific elements style a table add fancy headings

72 79

84 90

use special selectors extra bits

add print stylesheets extra bits

8. add to your site create horizontal menu bring back left column add top ad banner add third column

index vi

80 81

83 93 96

99 100 104 106 108

add fly-out menus add horizontal fly-outs create standard menus extra bits

9. troubleshoot and learn more validate your css get debugging tools debug css

64 67

71

7. work better with browsers adapt for IE use browser extensions

55 57

120 121 122

learn more about css extra bits

111 115 117 118

119 124 125

126 contents

introduction The Visual QuickProject Guide that you hold in your hands oȔers a unique way to learn about new technologies. Instead of drowning you in theoretical possibilities and lengthy explanations, this Visual QuickProject Guide uses big, color illustrations coupled with clear, concise step-by-step instructions to show you how to complete one specific project in a matter of hours. Our project in this book is to create a compelling, standards-compliant Web site using Cascading Style Sheets (CSS). We’ll use CSS in two main ways; first, we’ll use it for page layout, placing all of the text and images just where we want them on our pages. Then, we’ll use CSS to style the text, giving it the look we need for maximum impact. Along the way, you’ll also learn how to create CSS to wrap text around images; create menus and navigation bars; and how you can change the entire look of your site by changing just one file. By the time you’re finished with this book, you’ll have a good grounding in CSS that you can apply to your own projects and Web sites. This book covers the basics of CSS, but it doesn’t presume to teach you all about Web development; no book of this size can fully cover such a large subject. Before you dive into CSS, you should already know how to create HTML markup and save it as a Web page and how to upload that page to a Web server so that it is accessible in a Web browser. You don’t need to be an expert XHTML jockey, but you should be familiar with the basic XHTML tags and the fundamental structure of an XHTML page.

vii

what you’ll create We will build a Web site for a fictional business, Alpaca Repo. This business, if it really existed, would repossess these lovable, goofy-looking animals from owners that had fallen behind on their payments. We hasten to add that we personally would never tow away an alpaca, and no alpacas were harmed in the making of this book. Because the Web site we’ll create showcases all the basic techniques, you’ll be able to use what you learn to create or update your own Web site, whether it’s your personal Web site or an updated site for your company or organization.

In the past, it was common to lay out the elements on a Web page using XHTML tables. Text and images were placed in cells of the table. To style text on the page, you added XHTML style tags to each bit of text. These techniques are obsolete, and no modern site should use them. Instead, this book will cover how to create a modern looking site, using CSS to lay out the page elements and control the appearance of the elements on the page.

viii

introduction

how web pages work A modern Web page is made up of a number of files. These files are put together, or rendered, by the Web browser, which displays the page to the viewer. Several files make up a Web page: • The XHTML file contains the readable content of the page, i.e., the page’s text. An XHTML file is required. This file also contains some basic information about how you want the browser to understand the page. • The Cascading Style Sheet holds rules about the presentation of the content. These can be instructions for the layout of the content on the page, or instructions on how the text is to be styled. A CSS file is not, strictly speaking, required, but without one, your page will look awfully dull. • The JavaScript file has the scripts that add behaviors and user interaction to the page. This can be anything from a simple form validation that makes sure the user has filled in a form properly, to complex Web-based applications that rival desktop applications. Again, a JavaScript file isn’t required. • Most pages have one or more graphic images that add interest to the page.

introduction

ix

how this book works The title of each section explains what is covered on that page.

prepare images When you’re working on your sites, you’ll need to have a good image editing program available to prepare your images for the Web. That preparation will take three steps:

place images

1 Resampling the image so that it is at the proper resolution for the Web.

Numbered steps explain actions to perform in a specific order.

2 Resizing or cropping the image so it is let’s the right sizetheory on your page. Now put the into practice for the photos on the Alpaca Repo site. First,Web in the styles.css file, we’ll need to create three new classes to handle pho3 Saving the image in one of the three image formats. tos: floatRight, floatLeft, and photo. The first step, resampling, is important, because Web graphics are inherently photo class setsThere’s up the no styling low-resolution, being designed to beThe viewed on-screen. needfor to the photo and its caption that we use on thethe front page of the site. have photos on your site be more than resolution of the screen, which will be between 72 and 96 dpi (dots per inch). The extra resolution is wasted, and higher-resolution photos have larger file sizes, which will make your Web .photo { page load more slowly. So if you have photos taken by a digital camera, which width: 200px; is usally much higher resolution, you should reduce the resolution with your font-size: .8em; graphics editor. font-style: italic;

Code blocks show what should be put in the various XHTML and CSS files.

Reducing the resolution will usually changeline-height: the width and 1em; height of the picture, } depending on your image editor. Many editors allow you to see how resolution changes aȔect image size. Let’sPhotoshop also look at the XHTML for the image, which is in the index.html file: In this dialog, changing the resolution for a digital photograph from its native 180 pixels/ floatRight">