Four-Project Series

Modern CSS for a Portfolio Page you own this product

intermediate CSS
skills learned
Using custom properties to create light and dark themes • Applying grid and subgrid to a project • Styling form elements using an accent color • Using variable fonts • Using object-fit to prevent image distortion • Selecting elements to style using :has() and :where() • Using scroll-snap to scroll between sections • Using timeline animations to create a scroll-based progress bar • Using @support() to create fallbacks for features that have not yet been implemented across all major browsers
Martine Dowden
4 weeks · 3-5 hours per week average · INTERMEDIATE

pro $24.99 per month

  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose one free eBook per month to keep
  • exclusive 50% discount on all purchases

lite $19.99 per month

  • access to all Manning books, including MEAPs!


5, 10 or 20 seats+ for your team - learn more

A portfolio page is vital for any professional frontend web developer. In this series of liveProjects, you’ll utilize some of the modern features of CSS to create a stunning portfolio page of your very own. You’ll show off to your prospective clients with both a light and a dark theme that utilizes custom properties; use new ways to select elements when you style your contact form; deliver responsive designs that use grid, subgrid, columns, and flexbox to lay out content; and explore scroll-snap and timeline animations to alter the scroll behavior of your page.

These projects are designed for learning purposes and are not complete, production-ready applications or solutions.

This is a real series. It goes over a lot of concepts, some classic and well known, which are good refreshers and helpful for beginners and early intermediate, but also some newer more advanced subjects which makes it worthwhile for advanced users.

Yves Dorsman, Fullstack Developer, SollerS inc.

here's what's included

Project 1 Themes and Page Layout

Any web developer worth their salt needs an eye-catching portfolio site—and so your boss at Consultants Inc. has told you you need to make one! In this liveProject, you’ll experiment with delivering both light and dark themes for your site using CSS, custom properties, and a locally hosted variable font. Remember, web design is about self-expression—so don’t be afraid to play around with your code to help it fit you and your personality.

Project 2 Style a Contact Form

Contact forms are one of the most important parts of almost any site—especially your web design portfolio. If your potential clients aren’t impressed with a contact form, why would they ever use it to get in touch with you? In this liveProject, you’ll use CSS to create a stunning contact form. You’ll put your own spin on text, error messages, radio buttons, button styles, and more.

Project 3 Responsive Layout

In the modern world, web traffic is mobile traffic. That’s why your sites need to be responsive and easily adaptable to any screen size! In this liveProject, you’ll create a responsive layout for your portfolio site so it looks good on mobile. You’ll need to constrain your profile picture, utilize column-based layouts, use grid and flex to align items, and utilize flexbox to lay out your footer.

Project 4 Scroll Snap
Smooth scrolling is one of the most important features of any portfolio page! In this liveProject, you’ll utilize CSS—including animation timelines—to set up different features for when a user scrolls your page. You’ll lock your header to stay visible on screen at all times, ensure that the top of different sections snap to the top of the window as users scroll, establish a progress bar in the header to show how far you’ve scrolled, and more. When you’ve finished this final polish, your portfolio page will look great!

book resources

When you start each of the projects in this series, you'll get full access to the following book for 90 days.

choose your plan


only $41.67 per month
  • five seats for your team
  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose another free product every time you renew
  • choose twelve free products per year
  • exclusive 50% discount on all purchases
  • Modern CSS for a Portfolio Page project for free

I came across no other course, book or source that really helped me to layout and style a complete web page in the way as in this liveProject.

Volker Roth, Security Architect, SRC

This live project is an excellent way to make use of CSS3 you have already learned and to fill in the gaps in CSS3 for things you have not learned yet.

Patrick Regan, Python Django programmer, Mghpcc

project author

Martine Dowden

An award-winning CTO, UX/UI designer and developer, international speaker, and author, Martine focuses on web interfaces that are beautiful, functional, and accessible. She approaches user experience from both art and science perspectives, drawing from her degrees in psychology and visual communications. She has worked as a developer, artist, educator, and consultant since 2005. To stay active in the industry she writes articles, leads workshops, and speaks at conferences and meetups worldwide. Her favorite topics to present are frontend web development, CSS, user experience, interaction design, accessibility, and Firebase. In recognition of her work in the community, she was awarded and still maintains the Google Developer Expert (GDE) status and the Microsoft Most Valuable Professional (MVP).

In 2015, she published a children’s book, Programming Languages ABC++, of which the workbook edition sold over 20,000 copies in 2016. She then went on to write Approachable Accessibility: Planning for Success, which was released in June 2019, and Architecting CSS: The Programmer’s Guide to Effective Stylesheets in 2020.

Currently, she is the CTO at Andromeda Galactic Solutions where she continues to learn, work on, and share her passion for frontend development.


This liveProject is for frontend developers looking to learn the new features of CSS. To begin this liveProject, you will need to know the following:

  • Intermediate CSS
  • Intermediate HTML
  • Beginner npm
  • HTML elements
  • CSS box model
  • CSS cascading


You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.