Idham Choudry
Idham Choudry

Reputation: 629

How to put text below centered image responsive?

I create a responsive web page with image as background and another image(logo) centered in page.

The problem is that I want to put a text right below the centered image (logo) with a title. I tried to put it using padding-top, but it's inefficient and not very responsive.

I want to responsively put the text below the centered image.

Here is my code.

@font-face {
  font-family: 'Raleway';
  src: url('assets/font/Raleway-Thin.ttf') format ('ttf');
}
html,
body {
  margin: 0;
  height: 100%;
  overflow: hidden;
}
body {
  background-image: url('assets/image/bg.png');
  background-size: cover;
  background-position: center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-repeat: no-repeat;
}
p {
  font-family: 'Raleway';
  color: white;
  text-align: center;
  padding-top: 60% font-size: 17px;
}
img.ri {
  position: absolute;
  max-width: 40%;
  top: 10%;
  left: 10%;
}
img.ri:empty {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
@media screen and (orientation: portrait) {
  p {
    font-family: 'Raleway';
    color: white;
    text-align: center;
    font-size: 14px;
    padding-top: 65%
  }
  img.ri {
    max-width: 75%;
  }
}
@media screen and (orientation: landscape) {
  img.ri {
    max-height: 85%;
  }
}
<body>
  <img class="ri" src="assets/image/logo.png">
  <p>THIS WEBSITE IS CURRENTLY UNDER MAINTENANCE</p>
</body>

Upvotes: 1

Views: 3591

Answers (4)

Kalu Singh Rao
Kalu Singh Rao

Reputation: 1697

.member {
    display: inline-block;
    width:31%;
    vertical-align: top;
    text-align:center;
    position:relative;
}
.name {
    display: inline;
}
.member img {
    width: 100%;
    display: block;
}
<div id="design-cast">
     <h4>Design</h4>

    <div class="member">
        <img src="http://i.imgur.com/zmPeyso.png" class="img-responsive img-thumbnail" alt="Responsive image" />
        <div class="name">Name Description</div>
    </div>
</div>

Upvotes: 0

M.Tanzil
M.Tanzil

Reputation: 1995

Try this, i think this is what you want.

Wrap the logo and text in a div e.g: <div class='wrapper'> and apply css to this class.

CSS

 .wrapper {
   width:100%;
   text-align:center;
   padding-top:15%;
   position:relative;
 }

Here is the modified Snippet

@font-face {
  font-family: 'Raleway';
  src: url('assets/font/Raleway-Thin.ttf') format ('ttf');
}
html,
body {
  margin: 0;
  height: 100%;
  overflow: hidden;
}
body {
  background-image: url('assets/image/bg.png');
  background-size: cover;
  background-position: center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-repeat: no-repeat;
  overflow:auto;
}
.wrapper {
  width:100%;
  text-align:center;
  top:30%;
  position:relative;
}
p {
  font-family: 'Raleway';
  color: black;
  text-align: center;
  font-size: 17px;
margin-top: 5px;
max-width: 70%;
margin-left: auto;
margin-right: auto;
}
img.ri {
  max-width: 40%;
}
<body>
  <div class="wrapper">
  <img class="ri" src="http://dummyimage.com/200x200/3498db/fff">
  <p>THIS WEBSITE IS CURRENTLY UNDER MAINTENANCE</p>
    </div>
</body>

Upvotes: 2

Suhail Akhtar
Suhail Akhtar

Reputation: 2023

I think that you want something like this, try Fiddle

@font-face {
  font-family: 'Raleway';

  src: url('assets/font/Raleway-Thin.ttf') format ('ttf');
}

html, body{
  margin:0;
  height:100%;
  overflow:hidden;
}

body {
  background-image: url('assets/image/bg.png');
  background-size: cover;
  background-position: center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-repeat: no-repeat;
}

p{
  font-family: 'Raleway';
  color:#000;
  text-align: center;

  font-size: 17px;
  
}

.center
{
left:0;
right:0;
top:0;
bottom:0;
margin:0 auto;
position:absolute;
 position: fixed;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
}
<body>
<p class="center">  <img class="ri" src="https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png"><br>THIS WEBSITE IS CURRENTLY UNDER MAINTENANCE</p>


</body>

Upvotes: 1

khushal
khushal

Reputation: 1

try this :

<body>    
<figure>
<img class="ri" src="assets/image/logo.png">
<figcaption>THIS WEBSITE IS CURRENTLY UNDER MAINTENANCE</figcaption>
</figure>
</body>

Upvotes: 0

Related Questions