How To Make A Portfolio Website Using HTML CSS JS | Complete Responsive Website Design
3 min read
1 month ago
Published on Jul 03, 2025
This response is partially generated with the help of AI. It may contain inaccuracies.
Table of Contents
Introduction
This tutorial guides you through creating a responsive portfolio website using HTML, CSS, and JavaScript. By following these steps, you'll build a personal site that showcases your skills, work experience, and contact information, making it perfect for an online resume or CV.
Step 1: Set Up Your Project Files
- Create a new folder for your project.
- Inside this folder, create three files:
index.html
(for your HTML structure)styles.css
(for your CSS styles)script.js
(for your JavaScript functionality)
Step 2: Create the HTML Structure
- Open
index.html
and add the following basic structure:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="styles.css">
<title>Your Name's Portfolio</title>
</head>
<body>
<header>
<h1>Your Name</h1>
<p>Your Designation</p>
</header>
<section id="about"></section>
<section id="services"></section>
<section id="portfolio"></section>
<section id="contact"></section>
<script src="script.js"></script>
</body>
</html>
- Fill in the header section with your name and designation.
Step 3: Design the Header Section
- In
styles.css
, add styles for the header:
header {
text-align: center;
padding: 20px;
background-color: #f4f4f4;
}
- Consider using a larger font size for your name and a different color for emphasis.
Step 4: Create the About Section
- Add content to the
about
section inindex.html
:
<section id="about">
<h2>About Me</h2>
<p>Write a brief introduction about yourself.</p>
</section>
- Style it in
styles.css
for visual appeal.
Step 5: Create the Services Section
- Add the services you offer in the
services
section:
<section id="services">
<h2>Services</h2>
<ul>
<li>Service 1</li>
<li>Service 2</li>
<li>Service 3</li>
</ul>
</section>
- Style the list to make it visually engaging.
Step 6: Create the Portfolio Section
- Display your work in the
portfolio
section:
<section id="portfolio">
<h2>My Work</h2>
<div class="portfolio-item">Project 1</div>
<div class="portfolio-item">Project 2</div>
</section>
- Use CSS to create a grid layout for your portfolio items.
Step 7: Create the Contact Section
- Set up a contact form in the
contact
section:
<section id="contact">
<h2>Contact Me</h2>
<form id="contact-form">
<input type="text" placeholder="Your Name" required>
<input type="email" placeholder="Your Email" required>
<textarea placeholder="Your Message" required></textarea>
<button type="submit">Send</button>
</form>
</section>
Step 8: Make the Website Responsive
- Use CSS media queries to ensure your website looks good on all devices:
@media (max-width: 600px) {
header, section {
padding: 10px;
font-size: 14px;
}
}
Step 9: Enable Smooth Scrolling
- Add smooth scrolling functionality in
script.js
:
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener('click', function(e) {
e.preventDefault();
document.querySelector(this.getAttribute('href')).scrollIntoView({
behavior: 'smooth'
});
});
});
Step 10: Send Form Data to Google Sheets
- Use the Form to Google Sheets GitHub repository to set up data collection. Include the necessary script in your contact form submission handling.
Conclusion
You've successfully created a responsive portfolio website using HTML, CSS, and JavaScript. By following these steps, you can showcase your work and connect with potential clients or employers. Consider hosting your site online to make it accessible. For further enhancements, explore adding animations or integrating other web technologies. Happy coding!