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

All comments

  • fiza 100

    @Codewithfiza

    Submitted

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

    able to make it responsive.

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

    showing different images for different screen but i get using css property display: block and none.

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

    Is it ok if we use the framework for responsiveness like bootstrap but if we use bootstrap how would we add semantic html because it work with div.

    Mahmood 1,070

    @MahmoodHashem

    Posted

    Hey there! 🙋🏽‍♂️

    Congrats on finishing the challenge! ✅

    Your project looks awesome!

    Here are some helpful tips that you might find useful:

    📌 When you have different versions of the same image, consider using the <picture> tag.

    This will help ensure the correct image loads on the user's device, saving bandwidth and boosting performance.

    Example:

    <picture>
        <source media="(min-width: 768px)" srcset="{desktop image path here}">
        <img src="{mobile image path here}" alt="{alternative text here}">
    </picture>
    

    Hope you find this useful!

    Great job overall!

    Marked as helpful

    0
  • manzii07 40

    @manzii07

    Submitted

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

    I'm most proud of successfully creating a clean, responsive QR code component that closely matches the design. It was a great opportunity to practice my skills in semantic HTML and CSS Flexbox. Next time, I would like to explore adding some animations or transitions to enhance the user experience further. Additionally, I would use a CSS preprocessor like Sass to streamline and organize my styles more efficiently.

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

    One of the main challenges I encountered was ensuring the QR code component looked good on all screen sizes. Initially, the layout didn't scale well between different devices. I overcame this by adopting a mobile-first workflow and using CSS Flexbox to create a flexible, centered layout. Additionally, I made extensive use of media queries to adjust the styling for various screen widths, ensuring a consistent and responsive design across all devices.

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

    I would like help with the following areas:

    1. CSS Organization: Any tips on organizing my CSS to keep it maintainable and clean?
    2. Responsive Design: Feedback on optimizing the layout for various screen sizes would be helpful.
    3. Accessibility: Suggestions for improving the accessibility of the component for all users.
    Mahmood 1,070

    @MahmoodHashem

    Posted

    Hello there

    Congratulation on completing the challenge

    Your project is truly impressive

    Here are a few pointers that you might find useful:

    1. CSS Organization :

      • It's recommended to use consistent units throughout your project for better maintainability and scalability.
      • The most commonly recommended unit is rem (root em), as it is relative to the font size of the root element (<html>).
      • To simplify the use of rem, you can set the font size of the <html> element to 10px (using font-size: 62.5%;), which makes it easier to calculate rem values. For example, 1.6rem would be equivalent to 16px.
      • Using rem throughout your CSS styles will ensure that the sizes of elements scale proportionally with the base font size, making your project more responsive and accessible.
    2. Responsive Design :

      • Instead of using fixed width values for elements like cards, it's better to use max-width to make them responsive.
      • This approach allows the elements to scale down as the viewport size decreases, ensuring a better layout and user experience on different screen sizes.
      • By using max-width, the elements will maintain their desired maximum width, but they can also shrink down as needed, making your design more flexible and adaptable.
    3. Accessibility :

      • Proper use of HTML semantic elements, known as "landmarks," can greatly improve the accessibility of your project.
      • Landmarks like <main>, <footer>, <nav>, <section>, and <aside> provide meaningful structure to your HTML document, making it easier for screen readers and other assistive technologies to navigate and understand the content.
      • These semantic elements also help search engines and other automated tools better understand the purpose and hierarchy of your web page, improving its overall accessibility and SEO.
      • Incorporating these landmarks in your HTML structure ensures that users with disabilities can easily navigate and understand the content of your website.
      <nav></nav>
      <main>
          <section>
          .
          .
          </section>
           <section>
          .
          .
          </section>
      
      </main>
      <footer>
      
      

    I hope you found that helpful.

    You did a great job overall!

    Marked as helpful

    0
  • Jstickz 90

    @Jstickz

    Submitted

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

    I really learned a lot from this project. I was able to do alot of research of how client side validation of user input on a form is being done. This helped me in understanding the importance of regular espression in validating the correspondance of an input that should fir a particular pattern.

    Being a to maniputlate the default behavior of a form and making it easy for users to know the errors they are making in filling the for is really satisfying.

    This project has also thought me how to navigate through different pages using JavaScript window.location method.

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

    I encountered some challenges styling the listed icons I used but I was able to get it done after settling down to think about it well.

    also I faced challenges with the JavaScript code, displaying the email from the client side was not something I know before now, but I was able to discover the window.localStorage.setItem() method that helped save the input value and I was then able to display on the success page with another method window.localStorage.getItem().

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

    On this project, honestly it was not easy at all so I wouldn't know where I need to make adjustments, but to the best of knowledge I did it well.

    Mahmood 1,070

    @MahmoodHashem

    Posted

    Hello there

    Congratulations on successfully finishing the challenge!

    Your project is absolutely amazing.

    Here are a few suggestions that can further enhance your project:

     

    HTML comes with a built-in form validation API that is widely supported by modern browsers. This API allows you to perform client-side form validation without the need to write complex regular expressions. Instead, you can leverage the HTML's built-in validation attributes and properties to handle form validation.

    The key steps to implement form validation using the HTML validation API and JavaScript are as follows:

    Add Validation Attributes to the Form and Input Fields :

    • Add the noValidate attribute to the <form> element to disable the browser's default form validation behavior.
    • Add the required attribute to the input fields that should be mandatory.
    • Specify the appropriate type attribute for the input fields (e.g., type="email" for email fields) to enable built-in validation for the specific input type.
    <form action="" noValidate>
      <input
        type="email"
        required
        id="email"
        placeholder="[email protected]"
      />
    </form>
    

    Handle Form Submission with JavaScript :

    • Add an event listener to the submit event of the form.
    • Inside the event listener, call the preventDefault() method to prevent the default form submission behavior.
    • Check the validity of the form fields using the validity property, which provides various sub-properties like valueMissing and typeMismatch.
    • Based on the validity state, you can display appropriate error messages or perform other actions.
    const form = document.querySelector('form');
    const email = document.getElementById('email');form.addEventListener('submit', (e) => {
      e.preventDefault();  if (email.validity.valueMissing) {
        // Display "Please fill out this field" error
      } else if (email.validity.typeMismatch) {
        // Display "Please enter a valid email address" error
      } else {
        // Form is valid, proceed with submission
      }
    });
    

    Hope you found that helpful

    Keep up the hard work

    0
  • @EverWynter

    Submitted

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

    I wish I had access to the figma files to create a more accurate representation, eyeballing a design can be quite difficult but I think, aesthetics wise, I did quite well.

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

    No challenges, this design was quite simple

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

    Any and all feedback is appreciated, I'm always looking for ways to improve my CSS

    Mahmood 1,070

    @MahmoodHashem

    Posted

    Hello there!

    Congrats on finishing the challenge! ✅

    Your solution looks awesome!

    📌 It is considered a best practice to use semantic HTML elements such as <ul> and <li> for lists and <a> for links instead of buttons. This practice enhances the accessibility, maintainability, and meaningfulness of your code.

    Consider refactoring your code as shown below:

    After Refactoring

    <ul class="list-container">
        <li><a href="#">Github</a></li>
        <li><a href="#">Frontend Mentor</a></li>
        <li><a href="#">LinkedIn</a></li>
        ...
    </ul>
    

    Hope this information is useful to you!

    Keep up the great work!

    1
  • Jorge-234 110

    @Jorge-234

    Submitted

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

    I completed the project quickly and faced no difficulties throughout the entire process.

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

    Am open to any feedback and suggestion ! Thanks Frontend Mentor

    Mahmood 1,070

    @MahmoodHashem

    Posted

    Hey there! 🙋🏽‍♂️

    Congrats on finishing the challenge! ✅

    Your project looks awesome!

    📌 Using semantic HTML elements like <ul> and <li> for lists is a great practice. It enhances the accessibility, maintainability, and meaningfulness of your code.

    Consider refactoring your code as shown below:

    After Refactoring

    <ul class="list-container">
        <li><a href="#">Github</a></li>
        <li><a href="#">Frontend Mentor</a></li>
        <li><a href="#">LinkedIn</a></li>
        ...
    </ul>
    

    Incorporating <ul> and <li> improves the clarity of your content structure, benefiting screen readers and search engines. Additionally, it aligns with HTML best practices.

    Hope this information is useful to you!

    Keep up the fantastic work!!

    Marked as helpful

    2
  • @ricardosibu

    Submitted

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

    I'm learning use flex properties and align image and text.

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

    border, colors and fonts.

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

    I like help about use fewer code line css.

    Mahmood 1,070

    @MahmoodHashem

    Posted

    Hello there! 🙋🏽‍♂️

    Congrats on completing the challenge! ✅

    Your project looks fantastic!

    Here's a tip to make it even better:

    You did a great job using the grid to center the card, but don't forget to set the height of the body to also center it vertically.

    📌 CSS :

    body {
        min-height: 100vh;
        display: grid; 
        place-content:= center; 
    }
    

    Hope this helps!

    Keep up the great work!

    Marked as helpful

    0
  • @antimatterhut

    Submitted

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

    I was proud of the fact that I started with mobile and transitioned to desktop with media queries so easily.

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

    I was challenged with the picture and the border radius. I was confused at first bc the card had a br aswell as the picture. I didn't know that you could make one side rounded and the other not.

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

    I would like help with knowing whats optimal as opposed to what just happened to work for me.

    Mahmood 1,070

    @MahmoodHashem

    Posted

    Hey there! 🙋🏽‍♂️

    Congrats on finishing the challenge! ✅

    Your project looks awesome!

    Here are some helpful tips that you might find useful:

    Firstly:

    The border-radius property can take one to four values, depending on how you want to specify the rounding for each corner:

    1. Single value : If you provide a single value, it applies the same radius to all four corners.
       border-radius: 10px;
    

    2.Two values : If you provide two values, the first value applies to the top-left and bottom-right corners, and the second value applies to the top-right and bottom-left corners.

       border-radius: 10px20px;
    

    3.Three values : If you provide three values, the first value applies to the top-left corner, the second value applies to the top-right and bottom-left corners, and the third value applies to the bottom-right corner.

       border-radius: 10px20px30px;
    

    4.Four values : If you provide four values, they apply to the top-left, top-right, bottom-right, and bottom-left corners, respectively, in that order.

       border-radius: 10px20px30px40px;
    

    So, you can have one side of an element rounded while the other side remains sharp.

    For example, let's say you have a card element with a picture inside it. You could apply the following border-radius values:

    .card {
    border-radius: 20px20px00;
    }
    
    .card-picture {
    border-radius: 0020px20px;
    }
    

    Secondly:

    📌 When you have different versions of the same image, consider using the <picture> tag.

    This will help ensure the correct image loads on the user's device, saving bandwidth and boosting performance.

    Example:

    <picture>
        <source media="(min-width: 768px)" srcset="{desktop image path here}">
        <img src="{mobile image path here}" alt="{alternative text here}">
    </picture>
    

    Hope you find this useful!

    Great job overall!

    Marked as helpful

    0
  • Daniel 240

    @Flashdaniel

    Submitted

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

    I'm proud to be able to get the solution close to the design.

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

    It wasn't easy to design and display the eye-shape on the middle of the product image on hover. I used tricks to get it close to the design.

    .eye-shape {
      position: relative;
      display: var(--deplay-eye, none);
      margin: 0 auto;
      width: 43px;
      height: 43px;
      background-color: var(--White);
      border-radius: 70% 6px;
      transform: rotate(45deg);
      z-index: 2;
    }
    
    .eye-shape::after {
      content: "";
      display: block;
      position: absolute;
      bottom: 9.4px;
      left: 9px;
      width: 25px;
      height: 25px;
      border-radius: 50%;
      border: 6px solid #0ea3a3f5;
      background-color: var(--White);
    }
    
    /* use to place the eye-shape above the card_image */
    .grid-container {
      display: grid;
      grid-template-columns: 1fr;
    }
    
    /* card_image */
    .grid-item1 {
      grid-column: 1;
      grid-row: 1;
    }
    
    /* eye-shape */
    .grid-item2 {
      grid-column: 1;
      grid-row: 1;
      align-self: center;
    }
    
    /* use as a hack to display the eye-shape block on hover */
    .card__image-link:hover {
      --deplay-eye: block;
    }
    

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

    I know there are better ways on how to go about this. Any feedback is well appreciated. THANK YOU.

    Mahmood 1,070

    @MahmoodHashem

    Posted

    Hello there

    Congratulations on completing the challenge!*

    You did a fantastic job, and there's no need to feel any different. However, I suggest exploring a different method that requires less code.

    <div class="image">
            <img src="./images/image-equilibrium.jpg" alt="eye">
            <div class="overlay">
                   <img src="./images/icon-view.svg" alt="">
            </div>
    </div>
    
    .image{
          position: relative;
        }
    
        .overlay{
          position: absolute;
          top: 0; 
          display: none; 
          justify-content: center;
          align-items: center;
          background-color: hsla(178, 100%, 50%, 0.398);
          width: 100%;
          height: 100%;
          border-radius: 14px;
    }
        .image:hover .overlay{
            display: flex;
            cursor: pointer;
        }
    
    

    Great Job overall

    Marked as helpful

    1
  • @EO-emmanueloni

    Submitted

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

    Been a able to complete this project as a beginner

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

    Nil

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

    css

    Mahmood 1,070

    @MahmoodHashem

    Posted

    Hello There

    Congratulations on completing the challenge

    Here are some helpful suggestions to further enhance your project:

    1. You have successfully centered the card by using flex on the body, so there is no need to apply additional styling to the main element for centering the card. This extra styling caused the card to occupy the entire vertical screen, which is unnecessary. It's best to let the content inside the card determine its height. Therefore, remove all the main selectors from the style.

    2. Keep in mind that the text-align property of the card has an inheritance characteristic, meaning that setting it to center will also center all its content, including the profile image.

    3. Don't forget to add padding to the card for a better appearance.

    Hope you find this helpful

    Great job overall

    Marked as helpful

    0
  • P
    Jay L 60

    @jaylstudio

    Submitted

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

    Thought it would be hard using only vanilla JavaScript, but actually it wasn't. The reason why I started off with only vanillas is because I wanted to challenge myself and I'm glad I did. If not, I would have gone for sort of an easy way which is using React.js.

    Next time, I want to try solving the importing problem with data.json and see if I can simplify already existing functions as well.

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

    Importing data.json, which came with the project, was keep failing by the MIME type error. So I had to change the JSON file extension into JavaScript file and manually export the data.

    Mahmood 1,070

    @MahmoodHashem

    Posted

    A truly impressive and extraordinary solution. Wishing you even greater success in your future challenges

    0
  • @Vyshin77

    Submitted

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

    No relevant challenged was encountered

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

    Any aspect of the project where others feel can be improved

    Mahmood 1,070

    @MahmoodHashem

    Posted

    Hello there

    Congratulations on completing the challenge

    Your project is looking amazing!

    I observed an issue with the container's width. As the screen size decreases, the container's width also decreases, causing its content to overflow. This is due to the width: 40% setting, which I believe is unnecessary and problematic. Removing it should resolve the issue and improve functionality.

    Hope you find that helpful

    Great job overall

    Marked as helpful

    0
  • @ArthurDEVe

    Submitted

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

    Having managed to do everything smoothly, without getting stuck in any problem

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

    My only challenge was getting my name next to my photo, but luckily with a little trickery I managed to do it, even if not correctly.

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

    Only in the Display and positioning part, which is where my problems are

    Mahmood 1,070

    @MahmoodHashem

    Posted

    Hello There!

    Congratulations on Completing the challenge

    Here are some useful tips that you might find helpful:

    Centering the Card Vertically To center the card vertically, you should set the height of the body element to 100vh (100% of the viewport height) and remove any margin. This will ensure the card is centered both horizontally and vertically within the viewport.

    body {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    margin: 0;
    }
    

    By setting the height of the body to 100vh, the body will occupy the full viewport height, and the display: flex with justify-content: center and align-items: center will center the card both horizontally and vertically within the body.

    Card Width and Height Using a fixed width for the card is not the most responsive approach. Instead, you should consider using max-width to allow the card to adjust based on the screen size. Additionally, setting a fixed height is not practical, as the card's height should be determined by its content.

    css

    .card {
    max-width: 500px;
    background-color: white;
    box-shadow: 0010pxrgba(0, 0, 0, 0.1);
    border-radius: 10px;
    padding: 20px;
    }
    

    By using max-width: 500px, the card will retain a maximum width of 500px, but it will shrink as the screen size decreases, making the design more responsive. Additionally, removing the fixed height will allow the card's height to be determined by its content, ensuring a better fit for the user's needs.

    With these changes, the card will be centered both horizontally and vertically within the viewport, and its size will be more responsive to the user's screen size.

    Hope you find this helpful

    Keep up the hard work

    0