Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I scale the size of the elements in my HTML according to screen size?

I want to scale the size of the elements within my header as the screen scales down or up in size. How can this be done? Here is my html:

    <!DOCTYPE html>
    <html>
      <head>
        <title>myWebpage</title>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
        <link rel="shortcut icon" type="image/x-icon" href="pencil.ico" />

        <link href="main.css" rel="stylesheet" type="text/css">
      </head>

      <body>
          <header>
            <h1>Hello!</h1>
            <p>Welcome<br>Make Yourself at Home</p>
          </header>
     </body>
   </html>

and here is my css:

* {
  margin:0;
  padding:0;
}

body,html {
  height: 100%;
  background: honeydew;
}

/* Header*/
header {
  height: 100vh;
  background-image: url(https://s3-us-west-2.amazonaws.com/webassets/apple.jpg);
  background-size: cover;
  background-position: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-shadow: 0 1px 3px rgba(0,0,0,.8);
  text-align: center;


}
h1 {
  color: honeydew;
  font-size: 50px;
  font-family: "Helvetica Neue";

}
p {
  color: honeydew;
  font-size: 30px;
  font-family: "Helvetica Neue-Thin", sans-serif;
}

Here is my fullscreen page: enter image description here

& here it is scaled down to the smallest window: enter image description hereenter image description here

As you can see, i need the text to scale as my background did.. how do i accomplish this?

like image 736
Mike Strong Avatar asked Feb 07 '16 02:02

Mike Strong


1 Answers

Use vw for font-size.

h1{
 font-size : 7.5vw;
}

p{
 font-size : 2vw;
}

Demo is here.

like image 147
Arjun Avatar answered Sep 16 '22 17:09

Arjun