[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"site-config":3,"blog-categories":6,"topic:html-geolocation-api":35,"course-tree":111},{"data":4},{"google_site_verification":5,"ga4_measurement_id":5,"site_name":5,"default_og_image":5,"twitter_handle":5},null,{"data":7},[8,14,19,25,30],{"name":9,"slug":10,"description":11,"post_count":12,"subcategories":13},"CSS","css","Learn CSS with practical tutorials and examples covering layouts, Flexbox, Grid, responsive design, typography, positioning, animations, and more.",2,[],{"name":15,"slug":16,"description":17,"post_count":12,"subcategories":18},"HTML","html","Learn HTML with practical tutorials and examples for beginners. Explore HTML tags, elements, attributes, links, images, forms, semantic HTML, and more with clear explanations and real code examples.",[],{"name":20,"slug":21,"description":22,"post_count":23,"subcategories":24},"WPF","wpf","Learn WPF with practical tutorials and examples covering XAML, windows, controls, layouts, data binding, MVVM, commands, styles, templates, debugging, and modern WPF UI development.",1,[],{"name":26,"slug":27,"description":28,"post_count":23,"subcategories":29},"Python","python","Learn Python with practical tutorials covering strings, lists, functions, exceptions, files, packages, virtual environments, modules, classes, and beginner programming concepts.",[],{"name":31,"slug":32,"description":33,"post_count":23,"subcategories":34},"Java","java","Learn Java with practical tutorials and examples for beginners. Explore Java syntax, variables, data types, classes, objects, methods, inheritance, exceptions, collections, and more with clear explanations and real code examples.",[],{"data":36},{"id":37,"title":38,"slug":39,"content":40,"course":41,"subcategory":43,"author":46,"reading_time_minutes":12,"cornerstone":52,"schema_type":53,"faq_json":5,"video_url":5,"canonical_url":54,"meta_title":55,"meta_description":56,"og_image":5,"toc_json":57,"code_examples":85,"quiz":5,"exercises":94,"published_at":5,"updated_at":102,"prev":103,"next":107},62,"HTML Geolocation API","html-geolocation-api","\u003Ch2 id=\"html-geolocation-api\">HTML Geolocation API\u003C\u002Fh2>\u003Cp>The Geolocation API lets a web page request the user's physical location &mdash; latitude, longitude, and accuracy &mdash; directly from the browser, using GPS on mobile devices or IP\u002FWi-Fi triangulation on desktops. It's the technology behind \"find stores near me,\" delivery-tracking apps, weather widgets, and ride-sharing platforms.\u003C\u002Fp>\u003Ch3 id=\"how-it-works\">How It Works\u003C\u002Fh3>\u003Cp>The API is exposed through \u003Ccode>navigator.geolocation\u003C\u002Fcode>, available in every modern browser. Because location data is sensitive, browsers always show a permission prompt asking the user to allow or deny access, and the API only works on secure (HTTPS) origins.\u003C\u002Fp>\u003Ch3 id=\"getting-the-current-position\">Getting the Current Position\u003C\u002Fh3>\u003Cp>\u003Ccode>navigator.geolocation.getCurrentPosition()\u003C\u002Fcode> takes a success callback, an optional error callback, and an optional options object. The success callback receives a \u003Ccode>position\u003C\u002Fcode> object containing \u003Ccode>coords.latitude\u003C\u002Fcode>, \u003Ccode>coords.longitude\u003C\u002Fcode>, and \u003Ccode>coords.accuracy\u003C\u002Fcode> (in meters).\u003C\u002Fp>\u003Ch3 id=\"watching-position-over-time\">Watching Position Over Time\u003C\u002Fh3>\u003Cp>For apps that need continuous updates (like live navigation), \u003Ccode>watchPosition()\u003C\u002Fcode> keeps calling the success callback whenever the device's location changes, and returns a watch ID that can later be passed to \u003Ccode>clearWatch()\u003C\u002Fcode> to stop tracking.\u003C\u002Fp>\u003Ch3 id=\"handling-errors-and-permissions\">Handling Errors and Permissions\u003C\u002Fh3>\u003Cp>Users can deny the permission prompt, location services can be turned off, or the device may simply fail to get a fix. The error callback receives an error object with a \u003Ccode>code\u003C\u002Fcode> (1 = permission denied, 2 = position unavailable, 3 = timeout) and a \u003Ccode>message\u003C\u002Fcode>, so always handle this gracefully instead of assuming success.\u003C\u002Fp>\u003Ch3 id=\"useful-options\">Useful Options\u003C\u002Fh3>\u003Cul>\n\u003Cli>\u003Cstrong>enableHighAccuracy\u003C\u002Fstrong> &mdash; requests GPS-level precision (uses more battery).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>timeout\u003C\u002Fstrong> &mdash; how long to wait (in ms) before giving up.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>maximumAge\u003C\u002Fstrong> &mdash; allows reusing a cached position up to a given age in ms.\u003C\u002Fli>\n\u003C\u002Ful>\u003Ch3 id=\"common-use-cases\">Common Use Cases\u003C\u002Fh3>\u003Cp>Store locators, weather apps, delivery ETA tracking, geo-tagged photos, ride-sharing pickup detection, and location-based content personalization all build on this API.\u003C\u002Fp>\u003Cdiv class=\"try-it-yourself language-javascript\">\u003Cpre>\u003Ccode>if ('geolocation' in navigator) {\n  navigator.geolocation.getCurrentPosition(\n    (position) =&gt; {\n      const { latitude, longitude, accuracy } = position.coords;\n      console.log(`Lat: ${latitude}, Lng: ${longitude}, Accuracy: ${accuracy}m`);\n    },\n    (error) =&gt; {\n      console.error('Geolocation error:', error.code, error.message);\n    },\n    {\n      enableHighAccuracy: true,\n      timeout: 10000,\n      maximumAge: 0\n    }\n  );\n} else {\n  console.log('Geolocation is not supported by this browser.');\n}\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\u003Cdiv class=\"try-it-yourself language-javascript\">\u003Cpre>\u003Ccode>\u002F\u002F Continuously track the user's position and stop after 30 seconds\nconst watchId = navigator.geolocation.watchPosition(\n  (position) =&gt; {\n    console.log('Updated position:', position.coords.latitude, position.coords.longitude);\n  },\n  (error) =&gt; console.error('Watch error:', error.message)\n);\n\nsetTimeout(() =&gt; {\n  navigator.geolocation.clearWatch(watchId);\n  console.log('Stopped watching position.');\n}, 30000);\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>",{"name":15,"slug":42},"html-tutorial",{"name":44,"slug":45},"HTML5 Web APIs (Advanced\u002FTrending)","html5-web-apis-advancedtrending",{"slug":47,"display_name":48,"job_title":5,"short_bio":5,"expertise_tags":49,"headshot":5,"long_bio":5,"credentials":5,"twitter_url":5,"linkedin_url":5,"github_url":5,"personal_website_url":5,"other_sameas_urls":5,"topics":50,"posts":51},"badar-khalil","Badar Khalil",[],[],[],false,"Article","https:\u002F\u002Fwpfsharp.com\u002Ftopics\u002Fhtml-geolocation-api","HTML Geolocation API: Get User Location in JavaScript","Learn the HTML5 Geolocation API — getting user coordinates, handling permissions, watching position changes, and error handling with code examples.",[58],{"id":39,"text":38,"level":12,"children":59},[60,65,69,73,77,81],{"id":61,"text":62,"level":63,"children":64},"how-it-works","How It Works",3,[],{"id":66,"text":67,"level":63,"children":68},"getting-the-current-position","Getting the Current Position",[],{"id":70,"text":71,"level":63,"children":72},"watching-position-over-time","Watching Position Over Time",[],{"id":74,"text":75,"level":63,"children":76},"handling-errors-and-permissions","Handling Errors and Permissions",[],{"id":78,"text":79,"level":63,"children":80},"useful-options","Useful Options",[],{"id":82,"text":83,"level":63,"children":84},"common-use-cases","Common Use Cases",[],[86,91],{"id":87,"language":88,"code":89,"is_editable":90},136,"javascript","if ('geolocation' in navigator) {\n  navigator.geolocation.getCurrentPosition(\n    (position) => {\n      const { latitude, longitude, accuracy } = position.coords;\n      console.log(`Lat: ${latitude}, Lng: ${longitude}, Accuracy: ${accuracy}m`);\n    },\n    (error) => {\n      console.error('Geolocation error:', error.code, error.message);\n    },\n    {\n      enableHighAccuracy: true,\n      timeout: 10000,\n      maximumAge: 0\n    }\n  );\n} else {\n  console.log('Geolocation is not supported by this browser.');\n}",true,{"id":92,"language":88,"code":93,"is_editable":90},137,"\u002F\u002F Continuously track the user's position and stop after 30 seconds\nconst watchId = navigator.geolocation.watchPosition(\n  (position) => {\n    console.log('Updated position:', position.coords.latitude, position.coords.longitude);\n  },\n  (error) => console.error('Watch error:', error.message)\n);\n\nsetTimeout(() => {\n  navigator.geolocation.clearWatch(watchId);\n  console.log('Stopped watching position.');\n}, 30000);",[95],{"id":96,"title":97,"slug":98,"prompt":99,"starter_code":100,"expected_output":101,"language":88,"order_index":23},60,"Show Location or a Friendly Error","show-location-or-a-friendly-error","Write code that calls getCurrentPosition(). On success, log the coordinates. On failure, log a friendly message telling the user to enable location permissions, instead of a raw error object.","navigator.geolocation.getCurrentPosition(\n  (position) => {\n    \u002F\u002F TODO: log coordinates\n  },\n  (error) => {\n    \u002F\u002F TODO: log a friendly message\n  }\n);","Coordinates logged on success; a friendly 'please enable location access' message logged on error.","2026-09-27T18:50:49+00:00",{"id":104,"slug":105,"title":106},61,"embedding-youtube-videos-in-html","Embedding YouTube Videos in HTML",{"id":108,"slug":109,"title":110},63,"html-drag-and-drop-api","HTML Drag & Drop API",{"data":112},[113],{"id":23,"name":15,"slug":42,"icon":5,"icon_url":5,"short_description":114,"meta_title":115,"meta_description":116,"og_image":117,"locale":118,"subcategories":119},"Welcome to our HTML Tutorial for Beginners, a complete guide designed to help you learn HTML from the ground up.\n\nHTML, which stands for HyperText Markup Language, is the standard language used to structure content on the web. Whether you want to become a web developer, build your own website, or continue learning CSS and JavaScript, understanding HTML is an essential first step.\n\nThis HTML course takes you through the fundamentals step by step, using simple explanations and practical examples. ","HTML Tutorial for Beginners - Learn HTML Step by Step","Learn HTML from scratch with our beginner-friendly HTML tutorial. Understand HTML tags, elements, forms, tables, links, images, semantic HTML and more with practical examples.","https:\u002F\u002Fwpfsharp.com\u002Fstorage\u002Fcourses\u002Fog\u002F01M2GK0XN45C0B937NF9XFAD4S.webp","en",[120,145,181,205,281,315,329,353,369,385],{"id":23,"name":121,"slug":122,"order_index":23,"topics":123},"HTML Fundamentals & Setup","html-fundamentals-setup",[124,127,130,133,137,141],{"id":23,"title":125,"slug":126,"order_index":23,"cornerstone":52,"reading_time_minutes":23},"HTML Introduction & History","html-introduction-and-history",{"id":12,"title":128,"slug":129,"order_index":23,"cornerstone":52,"reading_time_minutes":12},"HTML Editors & Environment Setup","html-editors-and-environment-setup",{"id":63,"title":131,"slug":132,"order_index":63,"cornerstone":52,"reading_time_minutes":12},"HTML Basic Syntax & Document Structure","html-basic-syntax-document-structure",{"id":134,"title":135,"slug":136,"order_index":134,"cornerstone":52,"reading_time_minutes":12},4,"HTML Elements & Tags Explained","html-elements-tags-explained",{"id":138,"title":139,"slug":140,"order_index":138,"cornerstone":52,"reading_time_minutes":12},5,"HTML Attributes (Global & Standard)","html-attributes-global-standard",{"id":142,"title":143,"slug":144,"order_index":142,"cornerstone":52,"reading_time_minutes":12},6,"Understanding the DOCTYPE & HTML5 Boilerplate","understanding-doctype-html5-boilerplate",{"id":12,"name":146,"slug":147,"order_index":12,"topics":148},"Text & Content Basics","text-content-basics",[149,153,157,161,165,169,173,177],{"id":150,"title":151,"slug":152,"order_index":150,"cornerstone":52,"reading_time_minutes":12},7,"HTML Headings (H1–H6) & SEO Best Practices","html-headings-h1-h6-seo-best-practices",{"id":154,"title":155,"slug":156,"order_index":154,"cornerstone":52,"reading_time_minutes":12},8,"HTML Paragraphs & Line Breaks","html-paragraphs-line-breaks",{"id":158,"title":159,"slug":160,"order_index":158,"cornerstone":52,"reading_time_minutes":23},9,"HTML Text Formatting (Bold, Italic, Mark, etc.)","html-text-formatting-bold-italic-mark",{"id":162,"title":163,"slug":164,"order_index":162,"cornerstone":52,"reading_time_minutes":12},10,"HTML Styles (Inline CSS Basics)","html-styles-inline-css-basics",{"id":166,"title":167,"slug":168,"order_index":166,"cornerstone":52,"reading_time_minutes":12},11,"HTML Quotations & Citations (blockquote, q, cite)","html-quotations-citations-blockquote-q-cite",{"id":170,"title":171,"slug":172,"order_index":170,"cornerstone":52,"reading_time_minutes":12},12,"HTML Comments (Best Practices)","html-comments-best-practices",{"id":174,"title":175,"slug":176,"order_index":174,"cornerstone":52,"reading_time_minutes":12},13,"HTML Colors (Names, HEX, RGB, HSL)","html-colors-names-hex-rgb-hsl",{"id":178,"title":179,"slug":180,"order_index":178,"cornerstone":52,"reading_time_minutes":12},14,"HTML & CSS Integration (Inline, Internal, External)","html-css-integration-inline-internal-external",{"id":63,"name":182,"slug":183,"order_index":63,"topics":184},"Links, Media & Navigation","links-media-navigation",[185,189,193,197,201],{"id":186,"title":187,"slug":188,"order_index":186,"cornerstone":52,"reading_time_minutes":12},15,"HTML Links (Anchor Tags & Hyperlinks)","html-links-anchor-tags-hyperlinks",{"id":190,"title":191,"slug":192,"order_index":190,"cornerstone":52,"reading_time_minutes":12},16,"HTML Images (Alt Text, Lazy Loading, Formats)","html-images-alt-text-lazy-loading-formats",{"id":194,"title":195,"slug":196,"order_index":194,"cornerstone":52,"reading_time_minutes":23},17,"HTML Favicon Setup","html-favicon-setup",{"id":198,"title":199,"slug":200,"order_index":198,"cornerstone":52,"reading_time_minutes":12},18,"HTML Page Title & Meta Tags (SEO Essentials)","html-page-title-meta-tags-seo-essentials",{"id":202,"title":203,"slug":204,"order_index":202,"cornerstone":52,"reading_time_minutes":12},19,"HTML File Paths (Absolute vs Relative)","html-file-paths-absolute-vs-relative",{"id":134,"name":206,"slug":207,"order_index":134,"topics":208},"Structuring Content","structuring-content",[209,214,219,224,229,233,237,241,245,249,253,257,261,265,269,273,277],{"id":210,"title":211,"slug":212,"order_index":213,"cornerstone":52,"reading_time_minutes":12},24,"HTML Tables Explained: Rows, Columns & Merging Cells","html-tables-rows-columns-merging-cells",20,{"id":215,"title":216,"slug":217,"order_index":218,"cornerstone":52,"reading_time_minutes":12},25,"HTML Lists: Ordered, Unordered & Description Lists","html-lists-ordered-unordered-description",21,{"id":220,"title":221,"slug":222,"order_index":223,"cornerstone":52,"reading_time_minutes":12},26,"HTML Block vs Inline Elements Explained","html-block-vs-inline-elements",22,{"id":225,"title":226,"slug":227,"order_index":228,"cornerstone":52,"reading_time_minutes":23},27,"HTML Div & Span: Generic Containers Explained","html-div-and-span-containers",23,{"id":230,"title":231,"slug":232,"order_index":210,"cornerstone":52,"reading_time_minutes":12},28,"HTML Classes vs ID: Selectors Explained","html-classes-vs-id-selectors-explained",{"id":234,"title":235,"slug":236,"order_index":215,"cornerstone":52,"reading_time_minutes":23},29,"HTML Iframes: Embedding External Content","html-iframes-embedding-content",{"id":238,"title":239,"slug":240,"order_index":220,"cornerstone":52,"reading_time_minutes":12},30,"HTML Head Element Deep Dive","html-head-element-deep-dive",{"id":242,"title":243,"slug":244,"order_index":225,"cornerstone":52,"reading_time_minutes":12},31,"HTML Layout Techniques: Header, Nav & Footer","html-layout-techniques-header-nav-footer",{"id":246,"title":247,"slug":248,"order_index":230,"cornerstone":52,"reading_time_minutes":12},32,"Responsive HTML Design: Mobile-First Approach","responsive-html-design-mobile-first-approach",{"id":250,"title":251,"slug":252,"order_index":234,"cornerstone":52,"reading_time_minutes":63},74,"HTML Semantic Elements (article, section, aside, nav)","html-semantic-elements-article-section-aside-nav",{"id":254,"title":255,"slug":256,"order_index":238,"cornerstone":52,"reading_time_minutes":12},75,"HTML Style Guide & Coding Conventions","html-style-guide-coding-conventions",{"id":258,"title":259,"slug":260,"order_index":242,"cornerstone":52,"reading_time_minutes":12},76,"HTML Entities & Special Characters","html-entities-special-characters",{"id":262,"title":263,"slug":264,"order_index":246,"cornerstone":52,"reading_time_minutes":23},77,"HTML Symbols","html-symbols",{"id":266,"title":267,"slug":268,"order_index":266,"cornerstone":52,"reading_time_minutes":23},33,"HTML Emojis 😀: How to Use Them in Web Pages","html-emojis-trending-guide",{"id":270,"title":271,"slug":272,"order_index":270,"cornerstone":52,"reading_time_minutes":12},34,"HTML Character Sets: UTF-8 & Encoding Explained","html-character-sets-utf-8-encoding",{"id":274,"title":275,"slug":276,"order_index":274,"cornerstone":52,"reading_time_minutes":23},35,"HTML URL Encoding Explained","html-url-encoding-explained",{"id":278,"title":279,"slug":280,"order_index":278,"cornerstone":52,"reading_time_minutes":23},36,"HTML vs XHTML: Key Differences","html-vs-xhtml-key-differences",{"id":150,"name":282,"slug":283,"order_index":138,"topics":284},"Forms & User Input","forms-user-input",[285,290,295,300,305,310],{"id":286,"title":287,"slug":288,"order_index":289,"cornerstone":52,"reading_time_minutes":12},49,"HTML Forms Introduction","html-forms-introduction",37,{"id":291,"title":292,"slug":293,"order_index":294,"cornerstone":52,"reading_time_minutes":23},50,"HTML Form Attributes (action, method, etc.)","html-form-attributes-action-method",38,{"id":296,"title":297,"slug":298,"order_index":299,"cornerstone":52,"reading_time_minutes":23},51,"HTML Form Elements (input, select, textarea, button)","html-form-elements-input-select-textarea-button",39,{"id":301,"title":302,"slug":303,"order_index":304,"cornerstone":52,"reading_time_minutes":12},52,"HTML Input Types (Modern Types: email, date, color, range)","html-input-types-modern-email-date-color-range",40,{"id":306,"title":307,"slug":308,"order_index":309,"cornerstone":52,"reading_time_minutes":12},53,"HTML Input Attributes (required, placeholder, pattern)","html-input-attributes-required-placeholder-pattern",41,{"id":311,"title":312,"slug":313,"order_index":314,"cornerstone":52,"reading_time_minutes":12},54,"HTML Form Validation (Client-Side)","html-form-validation-client-side",42,{"id":154,"name":316,"slug":317,"order_index":142,"topics":318},"Graphics & Visuals","graphics-visuals",[319,324],{"id":320,"title":321,"slug":322,"order_index":323,"cornerstone":52,"reading_time_minutes":63},55,"HTML Canvas (2D Drawing API) 🔥","html-canvas-2d-drawing-api",43,{"id":325,"title":326,"slug":327,"order_index":328,"cornerstone":52,"reading_time_minutes":63},56,"HTML SVG (Scalable Vector Graphics)","html-svg-scalable-vector-graphics",44,{"id":158,"name":330,"slug":331,"order_index":150,"topics":332},"Multimedia","multimedia",[333,338,343,348,352],{"id":334,"title":335,"slug":336,"order_index":337,"cornerstone":52,"reading_time_minutes":12},57,"HTML Media Overview","html-media-overview",45,{"id":339,"title":340,"slug":341,"order_index":342,"cornerstone":52,"reading_time_minutes":12},58,"HTML Video Embedding (Native Player)","html-video-embedding-native-player",46,{"id":344,"title":345,"slug":346,"order_index":347,"cornerstone":52,"reading_time_minutes":12},59,"HTML Audio Embedding","html-audio-embedding",47,{"id":96,"title":349,"slug":350,"order_index":351,"cornerstone":52,"reading_time_minutes":12},"HTML Plug-ins (Object & Embed Tags)","html-plugins-object-embed-tags",48,{"id":104,"title":106,"slug":105,"order_index":286,"cornerstone":52,"reading_time_minutes":12},{"id":162,"name":44,"slug":45,"order_index":154,"topics":354},[355,356,357,361,365],{"id":37,"title":38,"slug":39,"order_index":291,"cornerstone":52,"reading_time_minutes":12},{"id":108,"title":110,"slug":109,"order_index":296,"cornerstone":52,"reading_time_minutes":12},{"id":358,"title":359,"slug":360,"order_index":301,"cornerstone":52,"reading_time_minutes":12},64,"HTML Web Storage (localStorage & sessionStorage)","html-web-storage-localstorage-sessionstorage",{"id":362,"title":363,"slug":364,"order_index":306,"cornerstone":52,"reading_time_minutes":12},65,"HTML Web Workers (Background Processing)","html-web-workers-background-processing",{"id":366,"title":367,"slug":368,"order_index":311,"cornerstone":52,"reading_time_minutes":12},66,"HTML Server-Sent Events (SSE)","html-server-sent-events-sse",{"id":166,"name":370,"slug":371,"order_index":158,"topics":372},"Accessibility & Best Practices (High-Demand  Skill) �","accessibility-best-practices-high-demand-skill",[373,377,381],{"id":374,"title":375,"slug":376,"order_index":320,"cornerstone":52,"reading_time_minutes":12},67,"HTML Accessibility (ARIA, Screen Readers)","html-accessibility-aria-screen-readers",{"id":378,"title":379,"slug":380,"order_index":325,"cornerstone":52,"reading_time_minutes":12},68,"Writing Semantic & SEO-Friendly HTML","writing-semantic-and-seo-friendly-html",{"id":382,"title":383,"slug":384,"order_index":334,"cornerstone":52,"reading_time_minutes":12},69,"HTML Performance Optimization Basics","html-performance-optimization-basics",{"id":170,"name":386,"slug":387,"order_index":162,"topics":388},"Reference & Practice","reference-practice",[389,393,397,401,405,409,413,417],{"id":390,"title":391,"slug":392,"order_index":23,"cornerstone":52,"reading_time_minutes":12},70,"HTML Tag List (Full Reference)","html-tag-list-full-reference",{"id":394,"title":395,"slug":396,"order_index":12,"cornerstone":52,"reading_time_minutes":12},71,"HTML Global Attributes Reference","html-global-attributes-reference",{"id":398,"title":399,"slug":400,"order_index":63,"cornerstone":52,"reading_time_minutes":12},72,"HTML Events Reference","html-events-reference",{"id":402,"title":403,"slug":404,"order_index":134,"cornerstone":52,"reading_time_minutes":12},73,"HTML Browser Support & Compatibility","html-browser-support-compatibility",{"id":406,"title":407,"slug":408,"order_index":138,"cornerstone":52,"reading_time_minutes":12},78,"HTML Doctypes Reference","html-doctypes-reference",{"id":410,"title":411,"slug":412,"order_index":142,"cornerstone":52,"reading_time_minutes":12},79,"HTTP Methods & Messages (Basics for Forms\u002FAPIs)","http-methods-messages-basics",{"id":414,"title":415,"slug":416,"order_index":150,"cornerstone":52,"reading_time_minutes":63},80,"HTML Interview Preparation (Top Q&A)","html-interview-preparation-top-qa",{"id":418,"title":419,"slug":420,"order_index":154,"cornerstone":52,"reading_time_minutes":23},81,"HTML Quiz & Practice Exercises","html-quiz-practice-exercises"]