HTML, CSS, and JavaScript All-in-One For Dummies

HTML, CSS, and JavaScript All-in-One For Dummies

HTML, CSS, and JavaScript All-in-One For Dummies
Автор: McFedries Paul
Дата выхода: 2023
Издательство: John Wiley & Sons, Inc.
Количество страниц: 851
Размер файла: 9.4 MB
Тип файла: PDF
Добавил: codelibs
 Проверить на вирусы

Title Page....3

Copyright Page....4

Table of Contents....7

Introduction....23

About This Book....24

Getting started with the book....24

My “No AI” guarantee....24

Foolish Assumptions....25

Icons Used in This Book....25

Beyond the Book....26

Book 1 Getting Started....27

Chapter 1 Getting Acquainted with HTML, CSS, and JavaScript....29

What Do HTML, CSS, and JavaScript Do, Exactly?....30

Why Learn HTML, CSS, and JavaScript?....30

Seeing How It All Works....32

To get started, launch a new text file....33

Notes about saving HTML files....33

This book in four words: Edit. Save. Reload. Repeat.....34

Adding Structure with HTML....36

What is HTML?....37

Getting the hang of HTML elements and tags....37

Understanding tag attributes....39

A barebones HTML page....40

Giving your page a title....42

Adding some text....43

Some notes on structure versus style....45

Adding Style with CSS....46

Figuring out cascading style sheets....46

Styles: Bundles of formatting options....46

Sheets: Collections of styles....47

Cascading: How styles propagate....48

Getting the hang of CSS rules and declarations....48

Adding styles to a page....50

Inserting inline styles....50

Embedding an internal style sheet....50

Linking to an external style sheet....53

Adding Dynamism with JavaScript....54

What is JavaScript?....55

Adding a script to a page....56

The <script> tag....56

Where do you put the <script> tag?....56

Example #1: Displaying a message to the user....57

Example #2: Writing text to the page....59

Chapter 2 Getting Ready to Code....61

Setting Up Your Test Browsers....62

Creating Your Local Folders....62

First, create the local root folder....63

Now create the local subfolders, if any....63

Choosing Your Text Editor....64

What Else Do You Need?....66

Using the WebDev Workbench....67

Chapter 3 Finding and Setting Up a Web Host....69

Understanding Web Hosting Providers....70

Using your existing internet provider....70

Finding a free hosting provider....70

Signing up with a commercial hosting provider....71

A Buyer’s Guide to Web Hosting....71

Finding a Web Host....74

Finding Your Way around Your New Web Home....75

Your directory and your web address....76

Making your hard disk mirror your web home....77

Uploading your site files....78

Making changes to your web files....79

Chapter 4 Testing and Validating Your Code....81

Cross-Browser Testing Your Code....82

Taking a look at browser market share....82

Your cross-browser testing suite....83

Cross-browser testing online....83

Understanding Validation....84

Don’t Skip Validation!....86

Validating Your HTML Code....87

Validating HTML online....87

Validating HTML in your text editor....89

Validating Your CSS Code....91

Validating CSS online....91

Validating CSS in your text editor....94

Validating Your JavaScript Code....94

Validating JavaScript online....95

Validating JavaScript in your text editor....96

Book 2 Learning HTML Basics....99

Chapter 1 Building Good Bones: Structuring the Page....101

Getting to Know HTML’s Basic Structure Tags....102

Creating paragraphs....103

Dividing your text with headings....105

Adding line breaks....107

Separating stuff with a horizontal rule....108

Carving Up the Page....109

The <header> tag....110

The <nav> tag....111

The <main> tag....112

The <article> tag....113

The <section> tag....113

The <aside> tag....114

The <footer> tag....115

Handling nonsemantic content with <div>....116

Handling words and characters with <span>....117

Commenting Your Code....117

Chapter 2 Adding Links, Lists, and Other Text Tidbits....119

Applying the Basic Text Tags....120

Emphasizing text....120

Marking important text....121

Nesting tags....122

Adding quotations....122

Creating Links....124

Linking basics....124

Anchors aweigh: Internal links....125

Building Bulleted and Numbered Lists....127

Making your point with bulleted lists....127

Numbered lists: Easy as one, two, three....129

Inserting Special Characters....130

A Few More HTML Text Tags to Know....131

<abbr>: The abbreviation text tag....132

<address>: The address text tag....132

<cite>: The citation text tag....133

<code>: The code text tag....134

<dfn>: The definition text tag....135

<dl>: The description list text tag....136

<kbd>: The keyboard input text tag....138

<mark>: The mark text tag....138

<pre>: The preformatted text tag....139

<s>: The strikethrough text tag....140

<sub>: The subscript text tag....142

<sup>: The superscript text tag....142

Chapter 3 Working with Images, Video, and other Media....145

Inserting Images....146

First, a mercifully brief look at image formats....146

Inserting an image....147

Inserting a figure with a caption....149

Turning an image into a link....150

Controlling an image’s vertical alignment....151

Embedding Videos....153

Embedding a third-party video....153

Embedding your own videos....154

Some notes about web media file formats....155

The bad news: Web video formats....155

The good news: The <video> tag....156

Embedding Audio Snippets....159

Embedding third-party audio....159

Embedding your own audio....161

Web audio formats....161

The <audio> tag....162

Chapter 4 Building Tables with Your Bare Hands....165

What Is a Table?....166

Web Woodworking: How to Build a Table....168

The simplest case: a one-row table....168

Adding more rows....170

Adding More Table Elements....171

Creating a header row....171

Including a caption....172

Creating a header column....173

Creating a table footer....174

Table Refinishing: Styling Your Tables....176

Aligning text within cells....176

Aligning cell text horizontally....176

Aligning cell text vertically....179

Bring on the borders....181

Putting your data in a padded cell....183

Changing the location of the caption....184

Chapter 5 Using Forms to Make a Page Interactive....185

What Is a Web Form?....186

Cruising along Server Street....187

Taking a walk down Local Lane....188

Building a Web Form....188

Setting up the form....189

Adding a form button....189

Working with text fields....190

Adding checkboxes....193

Working with radio buttons....195

Adding selection lists....197

Bringing in pickers....200

Chapter 6 Making Your Web Pages Accessible....203

Why to Make Your Pages Accessible....204

Accessibility is a right....204

Accessibility brings other benefits....205

Understanding Web Accessibility....205

Understanding who needs accessibility....206

Learning about assistive technologies for web surfing....207

Assistive technologies for visual disabilities....208

Assistive technologies for auditory disabilities....208

Assistive technologies for motor disabilities....209

Assistive technologies for cognitive disabilities....209

Making Your Page Structure Accessible....209

Using headings hierarchically....209

Using semantic sectioning elements....210

Making Text Accessible....210

Making Media Accessible....211

Specifying alt text for images....212

Making other media accessible....212

Buffing Up Your Page Accessibility Semantics....213

Adding form field labels....214

Understanding ARIA roles, states, and properties....214

Landmark ARIA roles....216

Section structure ARIA roles....216

Widget ARIA roles....218

Differentiating semantic page elements of the same type....219

Making Your Pages Keyboard-Friendly....220

Adding an element to the tab order....221

Removing an element from the tab order....222

Ensuring Sufficient Color Contrast....222

Validating the Accessibility of a Page....224

Book 3 Learning CSS Basics....225

Chapter 1 Figuring Out the CSS Box Model....227

Thinking Outside (but Also Inside) the Box Model....228

Understanding the components of the box model....228

Understanding block and inline boxes....230

Changing the display type for a box....231

Eyeballing an element’s box....232

A Brief Digression on Whitespace....233

Adding Padding....235

Putting a Border on It....237

Applying a border....237

Rounding your borders....240

Rounding borders based on the arc of a circle....242

Rounding borders based on the arc of an ellipse....244

Manipulating Element Margins....245

Taking advantage of negative margins....247

Collapsing margins ahead!....247

Dealing with negative margins....250

Other margin collapsing scenarios....250

Styling Element Sizes....250

Setting a minimum or maximum height or width....253

Making width and height make sense....254

Magically converting an inline element to a block-level element....255

Chapter 2 Getting to Know the CSS Selectors....257

Introducing Yourself to the Web Page Family....258

What’s All This About a Selector?....260

Seeing some examples of selectors....260

Working with selector lists....261

Learning the Standard Selectors....262

The type selector....262

The class selector (.)....262

Combining type and class selectors....263

Matching multiple classes....264

The id selector (#)....264

The universal selector (*)....265

Selecting Descendants, Children, and Siblings....265

The descendant combinator ( )....266

The child combinator (>)....267

The subsequent-sibling combinator (~)....267

The next-sibling combinator (+)....268

Selecting Elements by Attribute....269

Chapter 3 Pseudo School: Learning Pseudo-Classes and Pseudo-Elements....273

Scratching Your Head Over Pseudo-Classes....274

Introducing the pseudo-class....275

Styling elements with pseudo-classes....275

Matching child elements....277

:first-child....277

:last-child....278

:nth-child()....279

:nth-last-child()....281

:only-child....282

Matching child elements by type....282

:first-of-type....283

:last-of-type....284

:nth-of-type()....284

:nth-last-of-type()....285

:only-of-type....285

Matching form elements by state....286

Matching elements by user action....290

:active....290

:focus....291

:hover....291

Matching links....292

Working with functional pseudo-classes....293

A quick look at selector lists....294

:is()....294

:not()....295

:where()....297

:has()....298

Getting Up to Speed with Pseudo-Elements....300

Working with pseudo-elements....300

Generating a last child with ::after....301

Generating a first child with ::before....303

Styling the opening letter with ::first-letter....305

Styling the opening line with ::first-line....307

Chapter 4 Making CSS Make Sense....309

Commenting Your CSS Code....310

Commenting non-obvious code....310

Marking stylesheet sections with comments....311

Using a CSS Reset....312

Debugging CSS....314

Displaying the web development tools....314

Inspecting an element....316

Inspecting an element’s styles....317

Inspecting an element’s box model....319

Inspecting an element’s computed styles....320

Inspecting an element’s layout....321

Editing a property value....321

Disabling a declaration....323

Adding an inline declaration to an element....324

Adding an element declaration to the inspector stylesheet....324

Adding a class to an element....326

Simulating a pseudo-class state....327

Popping the Hood: How Styles Get Applied....328

Unravelling inheritance....328

Why some properties don’t inherit....329

Forcing inheritance....330

Flowing along with the cascade....331

How the cascade works....332

Understanding declaration types....332

Understanding origin types....333

Declaration type, origin type, and weight....333

Figuring out specificity....335

Specificity and :is(), :where(), :not(), and :has()....339

The ultimate tiebreaker: source code order....339

Putting it all together: the cascade algorithm....340

Chapter 5 Taking the Measure of CSS....343

Getting Comfy with CSS Measurement Units....344

Checking Out the Absolute Measurement Units....345

Getting to Know the Relative Measurement Units....346

Using percentages....347

Getting a handle on the em unit....347

Meeting your CSS measurement best friend: the rem unit....351

Here’s Looking at View(port Measurement Units)....354

Calculating with CSS....355

Calculating with calc()....355

Finding the smallest value with min()....356

Finding the largest value with max()....357

Setting bounds with clamp()....357

Chapter 6 Fancifying Pages with Colors and Backgrounds....359

Specifying Colors in CSS....360

Papayawhip, peachpuff, and more: color keywords....360

Rolling your own colors with the rgb() function....361

Specifying colors nerd-style: RGB codes....362

Going pro with the hsl() function....363

Using Color to Spruce Up Your Text....366

Applying a text color....366

Setting the text decoration color....366

Creating a text shadow....367

Styling an Element’s Background....368

Applying a coat of background color....368

Wallpapering an element with a background image....369

Taking advantage of the background shorthand property....374

Impressing Your Friends with Color Gradients....376

Applying a linear gradient....376

Applying a radial gradient....378

Applying a conic gradient....380

Setting Border Colors....381

Playing with Colors in the Dev Tools....381

Changing the color....382

Choosing accessible colors....383

Chapter 7 Taking Your Text Up a Notch with Web Typography....385

Taking Care of Your Text....386

Getting to know typefaces (and fonts, too)....386

All in the font family: Applying a typeface....387

Introducing the font stack....387

Generic font families....388

System font families....389

Web font families....390

Linking to a web font family....390

Self-hosting a web font family....394

The Typographic Trinity: Setting Type Size, Line Height, and Line Length....398

Setting the type size....399

Setting the line height....402

Setting the line length....404

How the typographical trinity are related....406

Applying Text Styles....406

Styling the text weight....406

Styling text with italics....408

Getting more styles with variable fonts....408

More Typographical Trickery....411

Controlling capitalization....411

Setting the spacing between letters....412

Displaying text as small caps....412

Using alternative numeric glyphs....413

The font shorthand property....414

Giving Your Links a Makeover....414

Messing with Alignment....416

Aligning text....416

Hyphenating text....417

Indenting a paragraph’s first line....418

Book 4 Building Dynamic Pages with JavaScript....419

Chapter 1 JavaScript: The Bird’s-Eye View....421

What Is Web Coding?....422

What Is a Programming Language?....423

Is JavaScript Hard to Learn?....424

What You Can Do with JavaScript....425

What You Can’t Do with JavaScript....426

What Do You Need to Get Started?....426

Dealing with a Couple of Exceptional Cases....427

Handling browsers with JavaScript turned off....427

Handling very old browsers....429

Adding Comments to Your Code....430

Creating External JavaScript Files....430

Chapter 2 Understanding Variables....433

Understanding Variables....434

Declaring a variable with let....434

Storing a value in a variable....435

Checking out another way to declare a variable: const....436

Using variables in statements....437

Naming Variables: Rules and Best Practices....439

Rules for naming variables....439

Ideas for good variable names....440

Understanding Literal Data Types....441

Working with numeric literals....441

Exponential notation....442

Hexadecimal integer values....443

Working with string literals....443

Using quotation marks within strings....443

Understanding escape sequences....444

Working with Boolean literals....445

JavaScript Reserved Words....445

JavaScript and HTML Keywords....446

Chapter 3 Building Expressions....449

Understanding Expression Structure....450

Building Numeric Expressions....451

A quick look at the arithmetic operators....451

Using the addition (+) operator....452

Using the increment (++) operator....452

Using the subtraction and negation (-) operators....453

Using the decrement (--) operator....455

Using the multiplication (*) operator....455

Using the division (/) operator....456

Using the modulus (%) operator....457

Using the arithmetic assignment operators....458

Building String Expressions....458

Building Comparison Expressions....461

The comparison operators....461

Using the equality (==) operator....461

Using the inequality (!=) operator....462

Using the greater than (>) operator....463

Using the less than (<) operator....463

Using the greater than or equal (>=) operator....464

Using the less than or equal (<=) operator....464

The comparison operators and data conversion....464

Using the strict equality (===) operator....466

Using the strict inequality (!==) operator....466

Using strings in comparison expressions....467

Using the ternary (?:) operator....468

Building Logical Expressions....469

The logical operators....469

Using the AND (&&) operator....469

Using the OR (||) operator....470

Using the NOT (!) Operator....471

Advanced notes on the && and || operators....472

Understanding Operator Precedence....474

The order of precedence....474

Controlling the order of precedence....475

Chapter 4 Controlling the Flow of JavaScript....479

Making True/False Decisions with if Statements....480

Branching with if. . .else Statements....482

Making Multiple Decisions....484

Using the AND (??) and OR (||) operators....484

Stringing together multiple if statements....485

Using the switch statement....486

Understanding Code Looping....488

Using while Loops....489

Using for Loops....492

Using do. . .while Loops....496

Controlling Loop Execution....498

Exiting a loop using the break statement....498

Bypassing loop statements using the continue statement....501

Avoiding Infinite Loops....502

Chapter 5 Harnessing the Power of Functions....503

What Is a Function?....504

The Structure of a Function....504

Where Do You Put a Function?....506

Calling a Function....506

Calling a function when the <script> tag is parsed....506

Calling a function after the page is loaded....508

Calling a function in response to an event....509

Passing Values to Functions....510

Passing a single value to a function....511

Passing multiple values to a function....512

Making an argument optional....514

Returning a Value from a Function....516

Getting Your Head around Anonymous Functions....517

Assigning an anonymous function to a variable....518

Replacing a function call with an anonymous function....519

Moving to Arrow Functions....520

Running Functions in the Future....522

Using a timeout to perform a future action once....523

Using an interval to perform a future action repeatedly....524

Understanding Variable Scope....526

Working with block scope....526

Working with function scope....527

Working with global scope....529

Using Recursive Functions....530

Chapter 6 Playing with the Document Object Model....535

Working with Objects....536

What is an object, anyway?....536

Manipulating object properties....537

Referencing a property....538

Some properties are objects....539

Changing the value of a property....539

Working with object methods....540

Rolling your own objects....541

The Web APIs: Some special objects....543

Getting to Know the Document Object Model....544

Specifying Elements....547

Specifying an element by id....547

Specifying elements by tag name....548

Specifying elements by class name....548

Specifying elements by selector....549

Working with collections of elements....549

Traversing the DOM....551

Getting the children of a parent element....552

Getting all the child nodes....552

Getting the first child node....554

Getting the last child node....555

Getting the parent of a child element....556

Getting the siblings of an element....556

Getting the previous sibling....557

Getting the next sibling....557

Manipulating Elements....557

Adding an element to the page....557

Step 1: Creating the element....558

Step 2: Adding the new element as a child....558

Step 3: Adding text and tags to the new element....559

Inserting text or HTML into an element....560

Removing an element....561

Modifying CSS with JavaScript....562

Changing an element’s styles....562

Adding a class to an element....563

Removing a class....564

Toggling a class....565

Tweaking HTML Attributes with JavaScript....566

Reading an attribute value....567

Setting an attribute value....567

Removing an attribute....568

Building Reactive Pages with Events....568

What’s an event?....569

Understanding the event types....569

Getting data about the event....571

Preventing the default event action....573

Chapter 7 Working with Arrays....575

What Is an Array?....576

Declaring an Array....576

Populating an Array with Data....577

Declaring and populating an array at the same time....579

Using a loop to populate an array....580

How Do I Iterate Thee? Let Me Count the Ways....581

Iterating an array: forEach()....582

Iterating an array: for. . .of....583

Iterating to test an array’s elements: every() and some()....584

Testing whether all elements pass a test: every()....584

Testing whether some elements pass a test: some()....586

Iterating to create a new array: map()....587

Iterating an array down to a value: reduce()....588

Iterating to locate an element: find()....590

Creating Multidimensional Arrays....591

Manipulating Arrays....592

The length property....592

Concatenating to create a new array: concat()....593

Creating a string from an array’s elements: join()....595

Removing an array’s last element: pop()....596

Adding elements to the end of an array: push()....597

Reversing the order of an array’s elements: reverse()....598

Removing an array’s first element: shift()....598

Returning a subset of an array: slice()....599

Ordering array elements: sort()....600

Removing, replacing, and inserting elements: splice()....602

Inserting elements at the beginning of an array: unshift()....604

Chapter 8 Manipulating Strings, Dates, and Numbers....605

Manipulating Text with the String Object....606

Working with string templates....606

Determining the length of a string....608

Searching for substrings....609

The startsWith(), includes(), and endsWith() methods....610

The indexOf() and lastIndexOf() methods....611

Methods that extract substrings....613

The charAt() method....613

The slice() method....615

The split() method....616

The substr() method....618

The substring() method....619

Understanding the differences between splice(), substr(), and substring()....620

Dealing with Dates and Times....621

Arguments used with the Date object....622

Working with the Date object....622

Specifying the current date and time....623

Specifying any date and time....623

Extracting information about a date....623

Extracting the month name from a date....626

Extracting the day name from a date....626

Setting the date....627

Performing date calculations....630

Determining a person’s age....630

Performing complex date calculations....632

Calculating the days between two dates....632

Working with Numbers: The Math Object....633

Converting between strings and numbers....634

The parseInt() function....634

The parseFloat() function....635

The + operator....635

The Math object’s properties and methods....636

Properties of the Math object....636

Methods of the Math object....636

Chapter 9 Storing User Data in the Browser....639

Understanding Web Storage....640

Introducing JSON....640

Learning the JSON syntax....641

Declaring and using JSON variables....642

Converting a JavaScript object to JSON....643

Converting a JSON string to a JavaScript object....644

Adding Data to Web Storage....645

Getting Data from Web Storage....647

Removing Data from Web Storage....648

Chapter 10 Debugging Your Code....649

Understanding JavaScript’s Error Types....650

Syntax errors....650

Runtime errors....650

Logic errors....651

Getting to Know Your Debugging Tools....652

Debugging with the Console....654

Displaying the console in various browsers....654

Logging data to the Console....655

Executing code in the Console....655

Pausing Your Code....656

Entering break mode....656

Setting a breakpoint....657

Entering break mode using a debugger statement....658

Exiting break mode....659

Stepping Through Your Code....659

Stepping one statement at a time....660

Stepping into some code....660

Stepping over some code....661

Stepping out of some code....661

Monitoring Script Values....662

Viewing a single variable value....662

Viewing all variable values....663

Adding a watch expression....664

More Debugging Strategies....665

The Ten Most Common JavaScript Errors....666

The Ten Most Common JavaScript Error Messages....669

Chapter 11 Processing Form Data....671

Looking at the HTMLFormElement Object....672

Taking a Peek at the HTMLInputElement Object....672

Programming Text Fields....673

Referencing text fields by field type....673

Getting a text field value....674

Setting a text field value....675

Coding Checkboxes....676

Referencing checkboxes....676

Getting the checkbox state....677

Setting the checkbox state....678

Dealing with Radio Buttons....679

Referencing radio buttons....679

Getting a radio button state....680

Setting the radio button state....681

Programming Selection Lists....682

Checking out the HTMLSelectElement object....682

Checking out the HTMLOptionElement object....683

Referencing selection list options....684

Getting the selected list option....684

Changing the selected option....686

Handling and Triggering Form Events....686

Setting the focus....687

Monitoring the focus event....688

Monitoring the blur event....688

Listening for element changes....689

Creating Keyboard Shortcuts for Form Controls....690

Dealing with the Form Data....692

Book 5 Looking Good with Layouts....695

Chapter 1 Exploring Some Layout Basics....697

Getting a Grip on Page Flow....698

Floating Elements....699

Example: Creating a pull quote....701

Clearing your floats....703

Collapsing containers ahead!....705

Positioning Elements....707

Using relative positioning....709

Giving absolute positioning a whirl....710

Trying out fixed positioning....712

Making elements stick (temporarily)....714

Stacking Elements....718

Layering elements with z-index....718

Getting your head around stacking contexts....720

Chapter 2 Getting Fancy with Flexbox....725

Introducing Flexbox....726

Do I Still Need Flexbox Now That CSS Grid Is Here?....727

Setting Up and Configuring Flex Containers....727

Setting up the flex container....728

Touring the landscape of a flex container....728

Setting the flex direction....728

Aligning flex items along the primary axis....731

Aligning flex items along the secondary axis....733

Centering an element horizontally and vertically....735

Allowing flex items to wrap....736

Aligning rows or columns along the secondary axis....738

Adding gaps between items....740

Taking Control of Flex Items....741

Allowing flex items to grow....742

Allowing flex items to shrink....744

Suggesting a flex item size....748

Using the flex shorthand property....752

Laying out content columns with Flexbox....753

Changing the order of flex items....756

Chapter 3 Laying Out a Page with CSS Grid....759

Introducing CSS Grid....760

Setting Up the Grid Container....761

Specifying the Grid Rows and Columns....762

Setting your own columns and rows: the explicit grid....763

Letting a column or row grow or shrink as needed....764

De-drudgifying Grid: the repeat() function....765

Setting a range of values: the minmax() function....766

Sizing with the auto keyword....766

Letting the browser do some of the work: the implicit grid....767

Leaving out the grid rows template....767

Leaving out the grid columns template....768

Specifying a size for implicit rows or columns....770

Creating grid gaps....771

Taking Control: Assigning Grid Items....772

Assigning grid items to columns and rows....772

Figuring out grid lines, tracks, and axes....773

Assigning grid items using line numbers....775

Displaying grid line numbers in the browser dev tools....778

Assigning grid items to named grid areas....779

Setting up named grid areas....780

Assigning the items to the area....782

Displaying named areas in the browser dev tools....782

Getting Your Grid Ducks in a Row (or a Column): Aligning Things....783

Chapter 4 Creating Responsive Layouts....787

What is a Responsive Layout?....788

Going with the Flow: Fluid Layouts....791

How Flexbox makes a page fluid....792

How CSS Grid makes a page fluid....795

Taking advantage of viewport units....798

Making typography fluid....800

Introducing your best fluid friend: clamp()....801

Querying Your Way to Responsiveness: Adaptive Layouts....801

Interrogating the screen with media queries....802

Laying out trees instead of forests with container queries....805

Setting up the query container....806

Querying the container....809

Working with container query units....811

Respecting your visitors with user preference queries....811

Working with Images Responsively....813

Making images responsive....814

Delivering images responsively....814

Exploring the Principles of Mobile-First Development....817

What is mobile-first web development?....817

Mobile first means content first....818

Pick a testing width that makes sense for your site....819

Get your content to scale with the device....820

Build your CSS the mobile-first way....820

Pick a “non-mobile” breakpoint that makes sense for your content....821

Index....823

EULA....851

Looking to start an exciting new career in front-end web building and design? Or maybe you just want to develop a new skill and create websites for fun. Whatever your reasons, it’s never been easier to start learning how to build websites from scratch than with help from HTML, CSS, & JavaScript All-in-One For Dummies. This book has the essentials you need to wrap your head around the key ingredients of website design and creation.

You’ll learn to build attractive, useful, and easy-to-navigate websites by combining HTML, CSS, and JavaScript into fun and practical creations. Using the 6 books compiled within this comprehensive collection, you’ll discover how to make static and dynamic websites, complete with intuitive layouts and cool animations. The book also includes:

  • Incorporate the latest approaches to HTML, CSS, and JavaScript, including those involving new markup, page styles, interactivity, and more
  • Step-by-step instructions for new site creators explaining the very basics of page layouts and animations
  • Easy-to-follow advice for adjusting page color and background, adding widgets to a site, and getting rid of all the bugs that affect site performance

Web development is a fun, interesting, and challenging skill that can lead to a lucrative career (if you’re so inclined). And with the right help, almost anyone can learn to create engaging websites from scratch. So, grab a copy of HTML, CSS, & JavaScript All-in-One For Dummies and you’ll be designing and building before you know it!


Похожее:

Список отзывов:

  • Отличная книга для всех, кто хочет разобраться в основах программирования и стать разработчиком или веб-дизайнером