Creating Portfolio Website Using Html & Css

Creating Portfolio Website Using Html & Css

Designing a Stylish Personal Portfolio Website with HTML and CSS

ยท

7 min read

In today's digital age, having a strong online presence is essential for professionals and creatives alike. Whether you're a designer, developer, writer, or any other professional, a personal portfolio website serves as your virtual business card, showcasing your skills, projects, and achievements to the world. In this Challenge , we'll walk through the process of creating basic personal portfolio website using HTML and CSS.

Introduction

A personal portfolio website serves as your online resume, allowing you to present your work in an organized and visually appealing manner. By building your portfolio from scratch using HTML and CSS, you have full control over the design and layout, ensuring it reflects your unique style and personality.

Creating the Structure

Start by creating a new HTML file and defining the basic structure of your portfolio website. Use semantic HTML tags to outline different sections such as the navbar, hero section, about section, skills section, and contact section.

Navbar

The navbar serves as the navigation menu for the website, allowing users to easily navigate between different sections such as Home, About, Skills, and Contact. It typically appears at the top of the page and provides clickable links to each section, enhancing the overall user experience and accessibility.

  <!-- Navbar -->
  <nav>
    <ul>
      <li><a href="#hero">Home</a></li>
      <li><a href="#about">About</a></li>
      <li><a href="#skills">Skills</a></li>
      <li><a href="#contact">Contact</a></li>
    </ul>
  </nav>

Hero Section

The hero section is the first thing visitors see when they land on the website. It usually contains a prominent headline or greeting along with a brief introduction to the website owner or their profession. The hero section is designed to capture the attention of visitors and provide them with an immediate understanding of the website's purpose or focus.

 <!-- Hero Section -->
  <section class="hero">
    <h3>I Am John Doe</h3>
    <p>Web Developer</p>
  </section>

About Section

The about section provides visitors with more information about the website owner, their background, skills, and experiences. It often includes a personal photo, a brief bio or description, and may highlight key achievements or qualifications. The about section helps to establish a personal connection with visitors and build credibility and trust.

 <!-- About Section -->
<section class="about">
      <h2 class="title">About <span>Me</span></h2>
      <div class="wrap">
        <div>
          <img src="./profiledoe.jpg" alt="Profile" width="400" height="400" />
        </div>

        <div>
          <p>
           Hello! I'm john doe, a passionate web developer dedicated to creating exceptional online experiences. With 1 years of experience in the field, I specialize in crafting responsive, user-friendly websites that not only meet but exceed client expectations.
           <br><br>Driven by a blend of creativity and technical expertise, I thrive on tackling challenges and turning innovative ideas into reality. Whether it's developing dynamic e-commerce platforms, interactive web applications, or sleek corporate websites, I bring a meticulous attention to detail and a commitment to excellence to every project I undertake.
<br><br>My skill set includes proficiency in a range of programming languages and frameworks such as HTML, CSS, JavaScript, React, Angular, and more. I am adept at collaborating with clients to understand their unique needs and translating those requirements into robust, scalable solutions that align with their business objectives.
          </p>
        </div>
      </div>
    </section>

Skills Section

The skills section showcases the website owner's expertise and proficiency in various areas. It typically lists specific skills or technologies relevant to their profession or industry, such as programming languages, design tools, or other competencies. The skills section allows visitors to quickly assess the website owner's capabilities and areas of specialization.

  <!-- Skills Section -->
  <section class="skills">
    <h2 class="title"><span>My</span> Skills</h2>
    <ul>
      <li>HTML</li>
      <li>CSS</li>
      <li>JavaScript</li>
      <li>React</li>
      <li>Node.js</li>
    </ul>
  </section>

Contact Section

The contact section provides visitors with a means to get in touch with the website owner. It usually includes a contact form where visitors can input their name, email address, and message, allowing them to send inquiries, feedback, or collaboration requests directly to the website owner. The contact section facilitates communication and engagement between the website owner and visitors.

<!-- Contact Section -->
  <section class="Contact">
    <h2 class="title"><span>Contact</span> Me</h2>
    <input type="text" placeholder="Name" />
    <input type="email" placeholder="Email" />
    <textarea name="message" id="message" cols="30" rows="10" placeholder="Message"></textarea>
    <button type="submit">Send</button>
  </section>

Styling with CSS

Now, let's add some style to our portfolio website using CSS. Create a new file named style.css and link it to your HTML file. Define styles for the navbar, hero section, about section, skills section, and contact section to achieve a clean and modern look.

/* Global Styles */
* {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    margin: 0;
    padding: 0;
}

/* Navbar Styles */
nav {
    background-color: black;
    padding: 30px 0;
}

nav > ul {
    margin-left: 40%; /* Adjust alignment of navbar items */
}

nav > ul > li {
    display: inline-block;
    margin: 0 10px;
}

nav > ul > li > a {
    text-decoration: none;
    color: white;
    transition: ease-in-out 0.3s;
}

nav > ul > li > a:hover {
    color: black;
    background-color: white;
    padding: 10px 20px;
    border-radius: 20px;
}

/* Hero Section Styles */
.hero {
    background: url("./hero.png") no-repeat center center/cover;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    height: calc(100vh - 60px); /* Adjust for navbar height */
    text-align: center;
}

.hero > h3 {
    font-size: 3rem;
    background-color: white;
    opacity: 0.8;
    padding: 10px;
    border-radius: 20px;
}

.hero > p {
    font-size: 1rem;
    padding: 10px;
    border-radius: 20px;
}

/* Title Section Styles */
.title {
    text-align: center;
    margin: 40px 0;
    font-size: 2rem;
    margin-bottom: 20px;
}

.title > span {
    color: #1c3386; /* Adjust color */
}

/* Wrap Section Styles */
.wrap {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 20px;
    margin: 20px 0;
}

.wrap > div {
    display: flex;
    flex: 1 1 300px;
    padding: 20px;
    background-color: #f1f1f1;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    text-align: justify;
    transition: all 0.3s ease-in-out;
    align-items: center;
    justify-content: center;
}

/* Skills Section Styles */
.skills > ul {
    margin: 0 30%; /* Adjust alignment */
}

.skills > ul > li {
    list-style: none;
    margin: 10px;
    display: inline-flex;
    justify-self: center;
    align-self: center;
    padding: 10px 20px;
    background-color: #1c3386;
    color: white;
}

/* Contact Section Styles */
.Contact {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100vh;
}

.Contact > input {
    padding: 10px;
    margin: 10px;
    width: 300px;
    border-radius: 20px;
}

.Contact > button {
    padding: 10px 20px;
    border-radius: 20px;
    background-color: #1c3386;
    color: white;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

Output

Conclusion

By following this guide and implementing the provided HTML and CSS code, you can create a stunning personal portfolio website that effectively showcases your skills and experiences to the world. Don't forget to personalize the content and design to reflect your unique style and personality. Good luck!

FAQs

1. Do I need to have prior coding experience to create a personal portfolio website?

No, you don't need extensive coding experience to create a basic personal portfolio website. However, familiarity with HTML and CSS is recommended as they are the fundamental languages used for web development. There are also numerous online resources and tutorials available to help beginners get started.

2. Can I customize the design and layout of my portfolio website?

Yes, one of the advantages of building your portfolio from scratch using HTML and CSS is the ability to fully customize the design and layout according to your preferences. You can choose colors, fonts, images, and layouts that best represent your personal brand or style.

3. Is it necessary to include a contact form on my portfolio website?

While including a contact form is not mandatory, it's highly recommended as it provides visitors with a convenient way to reach out to you for inquiries, collaborations, or job opportunities. Make sure to keep the form simple and easy to use, requiring only essential information such as name, email, and message.

4. How often should I update my portfolio website?

It's a good practice to update your portfolio website regularly, especially when you have new projects, skills, or achievements to showcase. Aim to update your portfolio at least every few months to keep it fresh and relevant. Additionally, regularly reviewing and refining your content and design can help improve the overall effectiveness of your portfolio.

5. Can I use my portfolio website to showcase projects from different fields or industries?

Yes, your portfolio website is a versatile platform where you can showcase projects from various fields or industries. However, it's essential to organize your projects effectively and tailor your content to cater to your target audience. Consider creating separate sections or categories for different types of projects to make navigation easier for visitors.


Happy Coding ๐Ÿš€

ย