<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Ricky Ferdinand</title>
    <description>The latest articles on DEV Community by Ricky Ferdinand (@ricky_littons).</description>
    <link>https://dev.to/ricky_littons</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4021795%2Fc16625ba-e6af-4e4c-9a1e-a044c3a902d8.png</url>
      <title>DEV Community: Ricky Ferdinand</title>
      <link>https://dev.to/ricky_littons</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ricky_littons"/>
    <language>en</language>
    <item>
      <title>Why Semantic HTML and accessibility Matter: Lessons From my portfolio Audit</title>
      <dc:creator>Ricky Ferdinand</dc:creator>
      <pubDate>Wed, 08 Jul 2026 21:52:42 +0000</pubDate>
      <link>https://dev.to/ricky_littons/why-semantic-html-and-accessibility-matter-lessons-from-my-portfolio-audit-25l0</link>
      <guid>https://dev.to/ricky_littons/why-semantic-html-and-accessibility-matter-lessons-from-my-portfolio-audit-25l0</guid>
      <description>&lt;p&gt;When building for the web, it is easy to focus entirely on visual aesthetics. However, clean code under the hood is what truly separates good websites from great ones. During my recent portfolio review, i took a deep dive into semantic HTML and web accessibility (a11y).&lt;br&gt;
Semantic HTML refers to using markup tags that inherently describe the meaning and purpose of the content enclosed within them. Rather than relying on generic containers like &lt;code&gt;div&lt;/code&gt; or &lt;code&gt;span&lt;/code&gt; for everything semantic code utilizes dedicated tags such as &lt;code&gt;header&lt;/code&gt;, &lt;code&gt;nav&lt;/code&gt;, &lt;code&gt;main&lt;/code&gt; and &lt;code&gt;footer&lt;/code&gt;. This practice matters profoundly because it structures data so search engines can index pages effectively, boosting SEO. More importantly, it creates an essential structural map for screen readers, allowing visually impaired users to seamlessly navigate a website.&lt;/p&gt;

&lt;p&gt;Before vs After : Writing Meaning&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="c"&gt;&amp;lt;!-- Before: Non semantic markup --&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"navigation-bar"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"nav-item"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Home&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"nav-item"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Projects&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"nav-item"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Contact&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
  &lt;li&gt;Home&lt;/li&gt;
  &lt;li&gt;Projects&lt;/li&gt;
  &lt;li&gt;Contact&lt;/li&gt;
&lt;/ul&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;**Fixing My Portfolio Accessibility Issues**

When conducting an accessibility audit on my personal portfolio site, I discovered three major issues that severely compromised user experience:

1. Missing image Alt text: Several project screenshots completely lacked `alt` attributes.
This meant screen readers would simply announce the raw file name to a visually impaired user. I resolved this by adding clear, descriptive text to every image tag.

2.Heading hierarchy errors: My layout skipped directly from an `h1`tag to an `h3`tag. I restructured the headings to follow a logical, consecutive hierarchy (`h1``

h2``h3`) for proper page layout reading.

3.Missing document language: The main template was missing a `lang` attribute entirely. I added `lang=en` directly to the root `html` element to ensure screen readers use the correct pronunciation.

### conclusion
Prioritizing accessibility ensures that the digital world remains open and inclusive for everyone. You can view my fully optimized, accessibility project live here: [My deployed portfolio](https://rickyferdinand205-l.github.io/iyf-s11-week-01-rickyferdinand205-L/)

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>html</category>
      <category>a11y</category>
      <category>webdev</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
