{"id":18867,"date":"2021-01-22T18:01:32","date_gmt":"2021-01-22T10:01:32","guid":{"rendered":"https:\/\/www.hongkiat.com\/blog\/?p=18867"},"modified":"2021-01-19T21:20:27","modified_gmt":"2021-01-19T13:20:27","slug":"css-is-the-hardest-language","status":"publish","type":"post","link":"https:\/\/www.hongkiat.com\/blog\/css-is-the-hardest-language\/","title":{"rendered":"CSS Could Be The Hardest Language of All (5 Reasons Why)"},"content":{"rendered":"<p>A website may be built upon several web languages such as HTML, CSS, JavaScript, and PHP. Among these languages, we may all agree that CSS is the easiest language. CSS defines the website layouts, colors, sizes, and typography in a simple way. It is straight forward, and <strong>does not require logical or conditional function to use.<\/strong><\/p>\n<p>But, you might be surprised to know that, in fact, <strong>CSS could be the hardest language and very troublesome<\/strong> in certain cases. How could that be? Well, here are some of the reasons.<\/p>\n<div class=\"ref-block ref-block--post\" id=\"ref-post-1\">\n\t\t\t\t\t<a href=\"https:\/\/www.hongkiat.com\/blog\/20-useful-css-tips-for-beginners\/\" class=\"ref-block__link\" title=\"Read More: 20 Basic CSS Tips for Designers\" rel=\"bookmark\"><span class=\"screen-reader-text\">20 Basic CSS Tips for Designers<\/span><\/a>\n<div class=\"ref-block__thumbnail img-thumb img-thumb--jumbo\" data-img='{ \"src\" : \"https:\/\/assets.hongkiat.com\/uploads\/thumbs\/250x160\/20-useful-css-tips-for-beginners.jpg\" }'>\n\t\t\t\t\t\t\t<noscript>\n<style>.no-js #ref-block-post-3999 .ref-block__thumbnail { background-image: url(\"https:\/\/assets.hongkiat.com\/uploads\/thumbs\/250x160\/20-useful-css-tips-for-beginners.jpg\"); }<\/style>\n<\/noscript>\n\t\t\t\t\t\t<\/div>\n<div class=\"ref-block__summary\">\n<h4 class=\"ref-title\">20 Basic CSS Tips for Designers<\/h4>\n<p class=\"ref-description\">\n\t\t\t\t\t\tBoost your web designs with our guide to 20 must-know CSS tips and tricks.\t\t\t\t\t\t<span>Read more<\/span><\/p>\n<\/div>\n<\/div>\n<h2>1. No Error Report<\/h2>\n<p>Every web language follows specific rules for writing code. When it comes to write style rules in CSS, it starts off with the selector\u2019s name (usually class, id, attribute selectors), followed by a curly bracket, then the style declaration inside the curly bracket, and ending each line with a semicolon.<\/p>\n<pre>\r\n.class {\r\n\tcolor: #fff;\r\n\tbackground-color: #000;\r\n}\t\r\n<\/pre>\n<p>Some web languages strictly regulate the rules; otherwise, it returns errors, but not CSS. <strong>CSS does not output errors.<\/strong> You may have unintentionally removed a semicolon or curly bracket, or named the selectors wrong \u2013 and your layout breaks<\/p>\n<p>In PHP, you will be informed of what the errors are, where it happened, and fixing it is a lot faster. In CSS, you are on your own, even if it is across multiple CSS files with thousands of code lines.<\/p>\n<h2>2. Too Flexible<\/h2>\n<p>Even though CSS seems to be easy to pick up, there are some problems in CSS that does not always have a direct answer, such as \u201cHow do you center an object?\u201d.<\/p>\n<p>There are a number of ways to center an object with CSS. We can center it using a <code>margin<\/code>, <code>padding<\/code>, <code>flexbox<\/code>, or <code>grid<\/code>. But the application will depend on what kind of center we would like to achieve, the overall page layout, the type of the object, whether it\u2019s an image, inline or block element, a background, how the element is nested as well as the surrounding element position.<\/p>\n<p>Scaling and refactoring CSS is also one problem that\u2019s not so straightforward. Unlike a programming language, CSS syntax is declarative and flexible. We can apply CSS directly in the element, in the template, in a CSS file, or load it from an external site. You can easily add styles everywhere and would still expect your page to load \u201cOK\u201d. But this exactly what makes refactoring CSS tricky, especially on a large-scale website.<\/p>\n<p>Refactoring CSS requires extra discipline, and you need to be careful when changing the color with <strong>find\/replace<\/strong> as you might accidentally wipe out one that shouldn\u2019t be replaced. As it does not throw any error, you often don\u2019t realize it until one of your users send you a notice.<\/p>\n<p>This is one reason we have dozen of CSS frameworks, patterns, and architectures to follow such as <a href=\"https:\/\/getbootstrap.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Bootstrap<\/a>, <a href=\"https:\/\/bulma.io\/\">Bulma<\/a>, Sass, LESS, BEM, CSS-in-JS, and Utility-first to give developers set of strict guidance and rules to follow when composing CSS.<\/p>\n<h2>3. Browser Compatibility Nightmare<\/h2>\n<p>Browser compatibility is the biggest problem in CSS and is a nightmare for web designers in certain cases. Despite the published standard by W3C, browser vendors implement CSS specifications differently.<\/p>\n<p>That is why websites like <a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/caniuse.com\/\">CanIUse.com<\/a> exists \u2013 to see whether certain CSS features are supported in one browser version or the next.<\/p>\n<p>When support for older browsers (like IE6 and IE7) is required \u2013 usually on a client\u2019s demand \u2013 we could end up having to create multiple files and serve it through a conditional statement, then doing a bunch of CSS hacks to make the site look consistent and similar viewed on more modern browsers. At the end of the day, problem #1 will keep us trapped in this nightmare.<\/p>\n<h2>4. CSS Specificity<\/h2>\n<p>CSS selectors have different levels of weight\/specificity. Let\u2019s take a look at this example:<\/p>\n<pre>\r\np {\r\n\tcolor: #000;\r\n}\r\np {\r\n\tcolor: #333;\r\n}\r\n<\/pre>\n<p>When two selectors with equal specificity hold the same styles, as shown above, the one that comes later overwrites its predecessor. But when we add class selector, say <code>.paragraph<\/code>, like so.<\/p>\n<pre>\r\np.paragraph {\r\n\tcolor: #000;\r\n}\r\np {\r\n\tcolor: #333;\r\n}\r\n<\/pre>\n<p>\u2026regardless of its position, the paragraph that is assigned with <code>paragraph<\/code> class will have <code>#000<\/code> color, as it is more specific.<\/p>\n<p>Frankly, CSS specificity is really confusing. You need to be attentive when defining style-rules. There might be one selector with a higher specificity which overwrites less-specific selectors, leaving you searching for the culprit for hours before locating it.<\/p>\n<h2>5. CSS vs. Your Client<\/h2>\n<p>CSS defines the website layout, colors and sizes and is <strong>closely<\/strong> <strong>related to the look of a website<\/strong>. Here lies the problem \u2013 design is subjective. Your client may have different perspective on the \u201clook\u201d, and may ask you to go with <code>1px<\/code> today, and <code>5px<\/code> the next day. If you are dealing with a <a target=\"_blank\" href=\"https:\/\/www.hongkiat.com\/blog\/clients-from-hell\/\" rel=\"noopener noreferrer\"> client from hell<\/a>, you are doomed.<\/p>\n<p><em>\"Can you make the red more blue? Revamp my logo but make it still the same?<\/em> <em>Make it a little bolder and darker, lighter and thinner?<\/em>\"<\/p>\n<p>GAH! Smashing your head on the wall seems like a walk in the park when dealing with <a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/clientsfromhell.net\/\">clients like these<\/a>.<\/p>\n<h2>Wrap Up<\/h2>\n<p>CSS maybe simple and relatively easy to learn. But, <strong>we need to be disciplined and consistent<\/strong> so that it can become more manageable. Do you have your problems with CSS? Share them with us below.<\/p>","protected":false},"excerpt":{"rendered":"<p>A website may be built upon several web languages such as HTML, CSS, JavaScript, and PHP. Among these languages, we may all agree that CSS is the easiest language. CSS defines the website layouts, colors, sizes, and typography in a simple way. It is straight forward, and does not require logical or conditional function to&hellip;<\/p>\n","protected":false},"author":113,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[352],"tags":[507,511],"topic":[4520],"class_list":["entry-content","is-maxi"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v22.8 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>CSS Could Be The Hardest Language of All (5 Reasons Why) - Hongkiat<\/title>\n<meta name=\"description\" content=\"A website may be built upon several web languages such as HTML, CSS, JavaScript, and PHP. Among these languages, we may all agree that CSS is the easiest\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.hongkiat.com\/blog\/css-is-the-hardest-language\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"CSS Could Be The Hardest Language of All (5 Reasons Why)\" \/>\n<meta property=\"og:description\" content=\"A website may be built upon several web languages such as HTML, CSS, JavaScript, and PHP. Among these languages, we may all agree that CSS is the easiest\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hongkiat.com\/blog\/css-is-the-hardest-language\/\" \/>\n<meta property=\"og:site_name\" content=\"Hongkiat\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/hongkiatcom\" \/>\n<meta property=\"article:published_time\" content=\"2021-01-22T10:01:32+00:00\" \/>\n<meta name=\"author\" content=\"Thoriq Firdaus\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@tfirdaus\" \/>\n<meta name=\"twitter:site\" content=\"@hongkiat\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Thoriq Firdaus\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/css-is-the-hardest-language\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/css-is-the-hardest-language\\\/\"},\"author\":{\"name\":\"Thoriq Firdaus\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/person\\\/e7948c7a175d211496331e4b6ce55807\"},\"headline\":\"CSS Could Be The Hardest Language of All (5 Reasons Why)\",\"datePublished\":\"2021-01-22T10:01:32+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/css-is-the-hardest-language\\\/\"},\"wordCount\":875,\"commentCount\":45,\"publisher\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#organization\"},\"keywords\":[\"CSS\",\"Web Developers\"],\"articleSection\":[\"Web Design\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/css-is-the-hardest-language\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/css-is-the-hardest-language\\\/\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/css-is-the-hardest-language\\\/\",\"name\":\"CSS Could Be The Hardest Language of All (5 Reasons Why) - Hongkiat\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#website\"},\"datePublished\":\"2021-01-22T10:01:32+00:00\",\"description\":\"A website may be built upon several web languages such as HTML, CSS, JavaScript, and PHP. Among these languages, we may all agree that CSS is the easiest\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/css-is-the-hardest-language\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/css-is-the-hardest-language\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/css-is-the-hardest-language\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"CSS Could Be The Hardest Language of All (5 Reasons Why)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/\",\"name\":\"Hongkiat\",\"description\":\"Tech and Design Tips\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#organization\",\"name\":\"Hongkiat.com\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/wp-content\\\/uploads\\\/hkdc-logo-rect-yoast.jpg\",\"contentUrl\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/wp-content\\\/uploads\\\/hkdc-logo-rect-yoast.jpg\",\"width\":1200,\"height\":799,\"caption\":\"Hongkiat.com\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/hongkiatcom\",\"https:\\\/\\\/x.com\\\/hongkiat\",\"https:\\\/\\\/www.pinterest.com\\\/hongkiat\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/person\\\/e7948c7a175d211496331e4b6ce55807\",\"name\":\"Thoriq Firdaus\",\"description\":\"Thoriq is a writer for Hongkiat.com with a passion for web design and development. He is the author of Responsive Web Design by Examples, where he covered his best approaches in developing responsive websites quickly with a framework.\",\"sameAs\":[\"https:\\\/\\\/thoriq.com\",\"https:\\\/\\\/x.com\\\/tfirdaus\"],\"jobTitle\":\"Web Developer\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/author\\\/thoriq\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"CSS Could Be The Hardest Language of All (5 Reasons Why) - Hongkiat","description":"A website may be built upon several web languages such as HTML, CSS, JavaScript, and PHP. Among these languages, we may all agree that CSS is the easiest","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.hongkiat.com\/blog\/css-is-the-hardest-language\/","og_locale":"en_US","og_type":"article","og_title":"CSS Could Be The Hardest Language of All (5 Reasons Why)","og_description":"A website may be built upon several web languages such as HTML, CSS, JavaScript, and PHP. Among these languages, we may all agree that CSS is the easiest","og_url":"https:\/\/www.hongkiat.com\/blog\/css-is-the-hardest-language\/","og_site_name":"Hongkiat","article_publisher":"https:\/\/www.facebook.com\/hongkiatcom","article_published_time":"2021-01-22T10:01:32+00:00","author":"Thoriq Firdaus","twitter_card":"summary_large_image","twitter_creator":"@tfirdaus","twitter_site":"@hongkiat","twitter_misc":{"Written by":"Thoriq Firdaus","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hongkiat.com\/blog\/css-is-the-hardest-language\/#article","isPartOf":{"@id":"https:\/\/www.hongkiat.com\/blog\/css-is-the-hardest-language\/"},"author":{"name":"Thoriq Firdaus","@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/person\/e7948c7a175d211496331e4b6ce55807"},"headline":"CSS Could Be The Hardest Language of All (5 Reasons Why)","datePublished":"2021-01-22T10:01:32+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hongkiat.com\/blog\/css-is-the-hardest-language\/"},"wordCount":875,"commentCount":45,"publisher":{"@id":"https:\/\/www.hongkiat.com\/blog\/#organization"},"keywords":["CSS","Web Developers"],"articleSection":["Web Design"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.hongkiat.com\/blog\/css-is-the-hardest-language\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.hongkiat.com\/blog\/css-is-the-hardest-language\/","url":"https:\/\/www.hongkiat.com\/blog\/css-is-the-hardest-language\/","name":"CSS Could Be The Hardest Language of All (5 Reasons Why) - Hongkiat","isPartOf":{"@id":"https:\/\/www.hongkiat.com\/blog\/#website"},"datePublished":"2021-01-22T10:01:32+00:00","description":"A website may be built upon several web languages such as HTML, CSS, JavaScript, and PHP. Among these languages, we may all agree that CSS is the easiest","breadcrumb":{"@id":"https:\/\/www.hongkiat.com\/blog\/css-is-the-hardest-language\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hongkiat.com\/blog\/css-is-the-hardest-language\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.hongkiat.com\/blog\/css-is-the-hardest-language\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hongkiat.com\/blog\/"},{"@type":"ListItem","position":2,"name":"CSS Could Be The Hardest Language of All (5 Reasons Why)"}]},{"@type":"WebSite","@id":"https:\/\/www.hongkiat.com\/blog\/#website","url":"https:\/\/www.hongkiat.com\/blog\/","name":"Hongkiat","description":"Tech and Design Tips","publisher":{"@id":"https:\/\/www.hongkiat.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.hongkiat.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.hongkiat.com\/blog\/#organization","name":"Hongkiat.com","url":"https:\/\/www.hongkiat.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.hongkiat.com\/blog\/wp-content\/uploads\/hkdc-logo-rect-yoast.jpg","contentUrl":"https:\/\/www.hongkiat.com\/blog\/wp-content\/uploads\/hkdc-logo-rect-yoast.jpg","width":1200,"height":799,"caption":"Hongkiat.com"},"image":{"@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/hongkiatcom","https:\/\/x.com\/hongkiat","https:\/\/www.pinterest.com\/hongkiat\/"]},{"@type":"Person","@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/person\/e7948c7a175d211496331e4b6ce55807","name":"Thoriq Firdaus","description":"Thoriq is a writer for Hongkiat.com with a passion for web design and development. He is the author of Responsive Web Design by Examples, where he covered his best approaches in developing responsive websites quickly with a framework.","sameAs":["https:\/\/thoriq.com","https:\/\/x.com\/tfirdaus"],"jobTitle":"Web Developer","url":"https:\/\/www.hongkiat.com\/blog\/author\/thoriq\/"}]}},"jetpack_featured_media_url":"https:\/\/","jetpack_shortlink":"https:\/\/wp.me\/p4uxU-4Uj","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts\/18867","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/users\/113"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/comments?post=18867"}],"version-history":[{"count":3,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts\/18867\/revisions"}],"predecessor-version":[{"id":52877,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts\/18867\/revisions\/52877"}],"wp:attachment":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/media?parent=18867"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/categories?post=18867"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/tags?post=18867"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/topic?post=18867"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}