Introduction to Web Technologies

Web Technology Examples

Part I - Introduction

Welcome to IWTHow do Browsers Work?The BasicsDevTools - pt IDevTools - pt 2DevTools - pt 3DevTools - pt 4DevTools - pt 5DevTools - pt 6DevTools - pt 7DevTools - pt 8DevTools - pt 9DevTools - pt 10DevTools - pt 11DevTools - pt 12Developer ToolsElements Tab - HTMLElements Tab - CSSConsole TabNetwork TabSources TabApplication TabLighthouse TabAccessibility TabCommand Palette

Part II - HTTP

Bundle SizeRender BlockingRender Blocking - FixedRequest ExplorerSequence Explorer

Part III - HTML

Core HTML5CanvasBasicsCubeFaceIEImageLines & ShapesRotateScaleTextTransformTranslateDocument Structurearticleasidefigureheader & footerheadingshgroupmainnavsectionsection outlineFormsElementsbuttondatalistfieldsetinputoutput & selecttextareaValidating Data EntryFramesBasicsiframeInline Elementsabbrbdi & bdobold & italicsbr & hrcitecodedatadel & insdfnmarktimeListsDefinitionOrderedUnorderedMedia EmbedsaudioembedImagesBackground vs. ForegroundBlocking Right ClickCompressionData URIsElementsimgmappicture & sourceFormats v1Formats v2Image SpritesInvisible PixelProgressive JPEGsobjectvideoSyntax & ConformanceAttribute TypesCommentsConformance CheckElement TypesEmojisEntitiesHello, World!Loose SyntaxTablesSimple TableRow SpanComplex TableTable LayoutText Contentfigure & blockquoteparagraphpreName NeededcontenteditabledraggablespellcheckHTML vs. XHTMLHello, HTML4!Hello, HTML5!Hello, XHTML!XHTML as XML (HTML)XHTML as XML (Malformed HTML)Kitchen SinkKitchen SinkProper vs. ConventionSemantic HTMLMarkup in JSColor PickerClass SillynessURLsTypes of Links

Part IV - CSS

Hello, CSS!The CascadeSelecting (WIP)Specificity (WIP)Static ContentBox ModelBox SizingColorFunctions (WIP)Color SpacesThemingInline vs. BlockPositionAbsoluteFixedRelativeStickyPseudo ElementsLayoutFlex - pt IFloatGrid - pt IWriting DirectionMediaFonts (WIP)Images (WIP)Imports (WIP)Conditional ResponsesElement StatesFlex - pt IIFunctionsGrid - pt IIMedia Queries (WIP)Animations & MovementAnimation (WIP)Keyframes (WIP)Transitions (WIP)

Part V - JavaScript

Async vs. DeferBasic InclusionDefensive InclusionDependency LayersDOM PreviewHello, JS!Modern InclusionScopingIIFE (Immediately Invoked Function Expression)ModulesWrapper Object

Part VI - Form

CapacitorJSiOS VersionName NeededName NeededTitle NeededWeb VersionElectronJSMPA (Multi-Page App)PWA (Progressive Web App)SPA (Single Page App)

Part VII - Graphics

CanvasSimple Example - pt ISimple Example - pt IIClickingCubeFaceInternet ExplorerImageLines & Shapes - pt ILines & Shapes - pt IIPixel CheckRotateScaleTextTransformTranslateCSSAnimation - LonghandAnimation - ShorthandDrawings (from CodePen)Transition - LonghandTransition - ShorthandImages - SimpleSVGSimple Example - pt ISimple Example - pt IIEmbedJavaScript - Take 1JavaScript - Take 2AnimateWebGLBasics2D Content2D Color

Part VIII - Asynchronous

Window.requestAnimationFrame()setInterval()setTimeout()setTimeout(0)

Part IX - Communications

FetchForm - POSTPre-AJAXWebRTCWebSocketsWebSockets - Collector ScriptXHRChatper 1Hello, World!Hello, World! (old)Chapter 3FetchAbortAsync - SendAsync - Send SlowAuthenticationHeadLong ProcessPartial ProgressPOSTRequest ExplorerResponse - Text MoreResponse - XML WalkSync - SendSync - Send SlowXML Response ExplorerOldAbort (old)Async - Send (old)Async - Send Slow (old)Authentication (old)Head (old)Long Process (old)Multipart (old)Override MIME (old)Partial Progress (old)Partial Readystate (old)POST (old)Ready State (old)Request Explorer Script (old)Response Text More (old)Response XML Walk (old)Sync Send (old)Sync Send - Slow (old)XML Response Explorer (old)XHRAbortAuthenticationHeadLong ProcessMultipartOverride MIMEPartial ProgressPartial ReadystatePOSTReadystateRequest Explorer ScriptResponse Text MoreResponse XML WalkXML Response Explorer

Part X - Regular Expressions

Need for RegexPart IPart IIPart IIIIntro JS RegexPart IPart IIPart IIIPart IVRegex ModifiersPart IPart IIPositional IndicatorsEscaping CharactersIndicating RepetitionPart IPart IIPart IIIPart IVPart VPart VIPart VIIPart VIIIGroupingPart IPart IICharacter ClassingPart IPart IIPart IIIPart IVPart VPart VIPart VIIaPart VIIbPart VIIINegative ClassingPart IPart IIPart IIIClassing ShorthandsCharacter ClassesAlternativesPart IPart IIPart IIIPart IVtest()SubexpressionsPart IPart IIPart IIIexec()

Part XI - Security

iframe SandboxScript ChecksumsSOP (Single Origin Policy)XSS HeadersDemo

Part XII - State & Storage

CookiesFile System Access APIindexedDB APIJWT (JavaScript Web Tokens)localStorage API

Part XIII - Web Components

Hello, Web Components!Lifecycle CallbacksThe Shadow DOMPassing Data - AttributesPassing Data - TagsTemplate & SlotOpen vs. ClosedOnly One Shadow:defined Selector:host Selector:host-context() SelectorPart AttributeCSS VariablesLifecycleCustom ElementsBypassing a Closed ShadowHello, React Components!Custom Element Manifest