The best approach for responsive design is to design a mobile version of your website first.
This allows you to see how the images, text, logos, and other elements will look on smaller screens.
If they display without problems, then you shouldn’t have any problems adapting your design to larger screens.
The first line of code to get started with responsive design is to be placed in the head section of the page. You must start with Responsive Header, placing this code inside the head of the HTML page.
<meta name="viewport" content="width=device-width, initial-scale=1">
- box-sizing: border-box
- overflow: hidden
min selects the smallest (most negative) value from a list of comma-separated expressions.
For example, in the case of:
min(1rem, 50%, 10vw), the browser calculates which of these relative units is the smallest, and uses that value as the actual value.
max() function selects the largest value from a list of comma-separated expressions.
max(50vw, 400px), the browser determines which one is either the largest value respectively.
clamp() is the combination of the
max() functions, accepting three parameters:
- the minimum value,
- the preferred value, and
- the maximum value
clamp(45ch, 50%, 75ch)This allows for the browser to determine the width of the paragraph. It will set the width to 50% unless 50% is smaller than 45ch, at which point 45ch will be selected, and visa versa for if 50% is wider than 75ch.
One of the God properties of CSS, to overcome your responsive frustrations is box-sizing. It is an essential property for responsive website development.
The size of the box gets elaborate based on the content. When the site is viewed on mobile, the content box grows based on the content which makes the site scroll.
If you use border-box on an element with a width set in per cent, it will take padding into account, so you’ll no longer need to adjust the width.
Needless to say, this trick works best for mobile websites and browsers with CSS3 support.
Overflow: hidden is a handy CSS property that is helpful in many cases in addition to responsive design.
Instead of clearing divs, you can clear containers by simply setting the overflow value to hidden.
Overflow: hidden makes value hidden instead of scrolling the content.
Try out this in codepen .
HTML offers the element that allows us to specify the exact image resource that will be rendered based on the media query we add.
Instead of having one image (usually a large, high-resolution version) sent to all screen sizes and scaling it to the viewport width, we specify a set of images to serve in specific situations.
<picture> <source media="(max-width:1000px)" srcset="picture-lg.png"> <source media="(max-width:600px)" srcset="picture-mid.png"> <source media="(max-width:400px)" srcset="picture-sm.png"> <img src="picture.png" alt="picture"> </picture>
In this example, picture.png is the full-size image.
From there, we define the next-largest version of the image, picture-lg.png, and the size reduces in descending order until the smallest version, picture-sm.png.
Note that we’re still using media queries in this approach, but it’s the element itself that is driving the responsive behaviour rather than defining breakpoints in the CSS.
Thanks for taking your time and reading this article. This article was originally published in my blog.
If you find this useful kindly like this article and follow me Ramya Chinnadurai on Twitter. Feel free to connect me for sharing your ideas and suggestions.