Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found

Submitted

Social Links Websites with HTML and CSS

@MahmoodElsaayed

Desktop design screenshot for the Social links profile coding challenge

This is a solution for...

  • HTML
  • CSS
1newbie
View challenge

Design comparison


SolutionDesign

Solution retrospective


What are you most proud of, and what would you do differently next time?

  • I'm really proud of how fast I got this done (but it was fairly easy tbh)

What challenges did you encounter, and how did you overcome them?

  • It took me a while to rememeber how grid alignment works

What specific areas of your project would you like help with?

"Should I use clamp? or use media queries later on?" this question kept popping up whenever I was considering the responsivity of font sizes. It's a minor issue but without a second opinion or a clear standard in mind it can be confusing sometimes.

Community feedback

@krushnasinnarkar

Posted

Hi @MahmoodElsaayed,

Congratulations on successfully completing the challenge! Your solution looks nice.

Here is my opinion on "Should I use clamp() or use media queries later on?"

Both clamp() and media queries are useful tools for responsive font sizing, and the best choice depends on your specific use case. Here's a breakdown of when to use each:

Using clamp(): clamp() is a CSS function that allows you to set a value that dynamically adjusts between a defined minimum and maximum, making it ideal for responsive font sizes. The syntax is clamp(min, preferred, max).

Advantages:

  • Simplifies CSS: It reduces the need for multiple media queries by setting a flexible range.
  • Smooth scaling: Provides a more fluid and seamless scaling of font sizes across different screen sizes.
  • Cleaner code: Makes your CSS more readable and maintainable by reducing the number of lines.
body {
  font-size: clamp(1rem, 2vw + 1rem, 2rem);
}

In this example, the font size will scale between 1rem and 2rem, depending on the viewport width.

Using Media Queries: Media queries are a classic approach to responsive design, allowing you to apply different styles at specific breakpoints.

Advantages:

  • Granular control: Provides more precise control over font sizes at specific breakpoints.
  • Conditional styling: Allows you to apply different styles based on various conditions like screen width, orientation, etc.
body {
  font-size: 1rem;
}

@media (min-width: 600px) {
  body {
    font-size: 1.5rem;
  }
}

@media (min-width: 900px) {
  body {
    font-size: 2rem;
  }
}

In this example, the font size changes at defined breakpoints, providing control over specific screen widths.

Choosing Between clamp() and Media Queries

  • Use clamp(): When you want a more fluid and responsive design without writing multiple media queries. It works well for situations where a smooth scaling effect is desired.
  • Use Media Queries: When you need precise control over font sizes at specific breakpoints or when dealing with complex responsive requirements.

Combined Approach You can also combine both methods to leverage the advantages of each. For instance, you might use clamp() for general scaling and media queries for fine-tuning at specific breakpoints.

body {
  font-size: clamp(1rem, 2vw + 1rem, 2rem);
}

@media (min-width: 1200px) {
  body {
    font-size: 2.5rem;
  }
}

In this example, clamp() handles the general responsiveness, while the media query fine-tunes the font size for larger screens.

Conclusion Both clamp() and media queries have their place in responsive design. Choose clamp() for simpler, fluid scaling and media queries for more granular control. Combining both can often provide the best results for complex designs.

I hope you find this helpful, and I would greatly appreciate it if you could mark my comment as helpful if it was.

Feel free to reach out if you have more questions or need further assistance.

Happy coding!

0

Please log in to post a comment

Log in with GitHub
Discord logo

Join our Discord community

Join thousands of Frontend Mentor community members taking the challenges, sharing resources, helping each other, and chatting about all things front-end!

Join our Discord