I need help with what is the best way to fully centre the contact form in the middle of the background image no matter what view the contact form is in(desktop, tablet, mobile). I would like for there to be a smallish amount of space between the bottom and top of the contact form, however, I would like the sides of the form to be further away from the edges of the image.
I hope yous understand what I'm asking for and thanks in advance.
The contact form can be seen on the live url: http://nathan-bayne.co.uk/index1
#contact-section {
background-color: #bce4b8; /* Previous colour that Aileen liked (#A74CAB) */
border-bottom: 1px solid #000;
text-align: center;
padding: 100px 0 0;
min-height: 800px;
width: 100%;
} /* Adjusts section sizing, padding and text alignment */
.contact-section-content {
margin-left: 14%;
margin-right: 14%;
margin-top: 2%;
}
::-webkit-input-placeholder {
text-align: center;
}
.bg-img {
/* The image used */
background-image: url("https://images.pexels.com/photos/807598/pexels-photo-807598.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=750&w=1260");
min-height: 750px;
border-radius: 35px;
margin-top: 2%;
margin-bottom: 3%;
/* Center and scale the image nicely */
background-position: center;
background-repeat: no-repeat;
background-size: cover;
position: relative;
border: 1px solid black;
} /* Sets background image behind contact form, sets sizing, positioning and styles the image */
.contact-section-content .container {
max-width: 60%;
padding: 2%;
background-color: white;
border-radius: 35px;
background-color: rgba(255, 255, 255, 0.15);
backdrop-filter: blur(15px);
border: 1px solid white;
margin-top: 1%;
} /* Sets sizing, styling and positioning of the contact form container */
.container label {
font-size: 2em;
color: white;
} /* Sets sizing of the contact form titles */
.container textarea {
height: 125px;
width: 100%;
border-radius: 35px;
padding: 15px;
margin: 5px 0 22px 0;
border: none;
background: #f1f1f1;
} /* Sets sizing, positioning and styling of the contact form text area */
input[type="text"] {
width: 100%;
padding: 15px;
margin: 5px 0 22px 0;
border: none;
background: #f1f1f1;
border-radius: 35px;
} /* Sets sizing, positioning and styling of the input tags for the contact form */
input[type="tel"] {
width: 100%;
padding: 15px;
margin: 5px 0 22px 0;
border: none;
background: #f1f1f1;
border-radius: 35px;
} /* Sets sizing, positioning and styling of the input tags for the contact form */
.contact-section-content button {
font-size: 2em;
padding: 0.6% 6%;
border-radius: 35px;
color: #fff;
background-color: #339a9a;
border: 1px solid black;
cursor: pointer;
text-align: center;
/* clear: both; May not need this included */
margin-left: 0%;
margin-top: 1%;
} /* Styles the contact form submission button */
.contact-section-content button:hover {
color: rgb(255, 255, 255);
background-color: #004e4f;
border: 2px solid white;
} /* Styles the contact form submission button when you hover over it */
.container input::-webkit-input-placeholder {
font-size: 1.5em;
line-height: 2;
} /* Sets sizing of the contact form input placeholders */
.container textarea::placeholder {
font-size: 1.5em;
line-height: 2;
} /* Sets sizing of the contact form textarea placeholders */
#media only screen and (max-width: 1606px) {
.contact-section-content {
margin-left: 2.5%;
margin-right: 2.5%;
margin-bottom: 6%;
}
::-webkit-input-placeholder {
text-align: center;
}
.bg-img {
/* The image used */
background-image: url("https://images.pexels.com/photos/807598/pexels-photo-807598.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=750&w=1260");
min-height: 750px;
border-radius: 35px;
margin-top: 2%;
margin-bottom: 3%;
/* Center and scale the image nicely */
background-position: center;
background-repeat: no-repeat;
background-size: cover;
position: relative;
} /* Sets background image behind contact form, sets sizing, positioning and styles the image */
.contact-section-content .container {
max-width: 70%;
padding: 2%;
background-color: white;
border-radius: 35px;
background-color: rgba(255, 255, 255, 0.15);
backdrop-filter: blur(15px);
border: 1px solid white;
margin-top: 1.5%;
} /* Sets sizing, styling and positioning of the contact form container */
.container label {
font-size: 2em;
color: white;
} /* Sets sizing of the contact form titles */
.container textarea {
height: 125px;
width: 100%;
border-radius: 35px;
padding: 15px;
margin: 5px 0 22px 0;
border: none;
background: #f1f1f1;
} /* Sets sizing, positioning and styling of the contact form text area */
input[type="text"] {
width: 100%;
padding: 15px;
margin: 5px 0 22px 0;
border: none;
background: #f1f1f1;
border-radius: 35px;
} /* Sets sizing, positioning and styling of the input tags for the contact form */
input[type="tel"] {
width: 100%;
padding: 15px;
margin: 5px 0 22px 0;
border: none;
background: #f1f1f1;
border-radius: 35px;
} /* Sets sizing, positioning and styling of the input tags for the contact form */
.contact-section-content button {
padding: 1% 8%;
font-size: 1.8em;
} /* Styles the contact form submission button */
}
#media only screen and (max-width: 815px) {
.contact-section-content {
margin-left: 2.5%;
margin-right: 2.5%;
margin-top: 10%;
margin-bottom: 15%;
}
::-webkit-input-placeholder {
text-align: center;
}
.bg-img {
/* The image used */
background-image: url("https://images.pexels.com/photos/807598/pexels-photo-807598.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=750&w=1260");
min-height: 670px;
border-radius: 35px;
margin-top: 2%;
margin-bottom: 3%;
/* Center and scale the image nicely */
background-position: center;
background-repeat: no-repeat;
background-size: cover;
position: relative;
} /* Sets background image behind contact form, sets sizing, positioning and styles the image */
.bg-img form {
margin-bottom: 7.5%;
} /* Sets background image behind contact form, sets sizing, positioning and styles the image */
.contact-section-content .container {
max-width: 85%;
padding: 2%;
background-color: white;
border-radius: 35px;
background-color: rgba(255, 255, 255, 0.15);
backdrop-filter: blur(15px);
border: 1px solid white;
margin-top: 1.5%;
} /* Sets sizing, styling and positioning of the contact form container */
.container label {
font-size: 2em;
color: white;
} /* Sets sizing of the contact form titles */
.container textarea {
height: 125px;
width: 100%;
border-radius: 35px;
padding: 15px;
margin: 5px 0 22px 0;
border: none;
background: #f1f1f1;
} /* Sets sizing, positioning and styling of the contact form text area */
input[type="text"] {
width: 100%;
padding: 15px;
margin: 5px 0 22px 0;
border: none;
background: #f1f1f1;
border-radius: 35px;
} /* Sets sizing, positioning and styling of the input tags for the contact form */
input[type="tel"] {
width: 100%;
padding: 15px;
margin: 5px 0 22px 0;
border: none;
background: #f1f1f1;
border-radius: 35px;
} /* Sets sizing, positioning and styling of the input tags for the contact form */
.contact-section-content button {
padding: 1% 8%;
font-size: 2em;
margin-bottom: 4%;
} /* Styles the contact form submission button */
.container input::-webkit-input-placeholder {
font-size: 1.5em;
line-height: 2;
} /* Sets sizing of the contact form input placeholders */
.container textarea::placeholder {
font-size: 1.5em;
line-height: 2;
} /* Sets sizing of the contact form textarea placeholders */
}
<link rel="stylesheet" href='https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.0.3/css/bootstrap.min.css' media="screen" />
<section id="contact-section">
<div class="contact-section-content">
<div class="bg-img"><br><br>
<form action="/action_page.php" class="container">
<label for="psw"><b>Name</b></label>
<input type="text" placeholder="Enter Name" name="psw" required>
<label for="email"><b>Email</b></label>
<input type="text" placeholder="Enter Email" name="email" required>
<label for="number"><b>Mobile Number</b></label>
<input type="tel" name="contact_number" placeholder="Mobile Number" pattern="[0-9]{11}"/>
<label for="psw"><b>Contact Summary</b></label>
<textarea name="subject" placeholder="Write a short summary about what you're in need of help with.." required></textarea>
<button type="submit">Submit Form</button>
</form>
</div>
</div>
Just add this to.bg-img :
display: flex; align-items: center;
And set margin-top: 0 for .container
Try to add this to your .bg-image class
.bg-img {
background-image: url("https://images.pexels.com/photos/807598/pexels-photo-807598.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=750&w=1260");
min-height: 750px;
border-radius: 35px;
margin-top: 2%;
margin-bottom: 3%;
display : flex ;
flex-direction : row;
align-items : center;
justify-content: center;
/* Center and scale the image nicely */
background-position: center;
background-repeat: no-repeat;
background-size: cover;
position: relative;
border: 1px solid black;
}
what I added is display:flex and justify-content/align-items : center to center any element inside that container
Related
My submit button moves when I resize the page. This behavior is bad (obviously). What is the correct way to make it so that my button is left aligned to my textarea?
#chatboxTranscript {
width: 31.25em;
/* padding: 0em; */
background-color: #36393f;
color: #fff;
display: flex;
border: 0.125em solid #000;
/* Increase border width */
border-radius: 0.3125em 0.3125em 0 0;
/* Round the border */
box-sizing: border-box;
margin: 0 auto;
height: 12.5em;
/* Maintain the height */
}
#chatboxInput {
top: -0.125em;
height: 3.35em;
left: -2.2em;
width: 37.3em;
/* Keep the width the same */
background-color: #36393f;
/* Keep the color the same */
border: 0.15em solid #000;
border-radius: 0 0 0.3125em 0.3125em;
/* Round the border */
padding-bottom: 1.5em;
box-sizing: border-box;
margin: 0 auto;
display: flex;
/* border-top: none; */
position: relative;
}
.input-group {
display: flex;
justify-content: space-between;
}
button[type="submit"] {
position: relative;
display: inline-block;
width: 4em;
top: -0.1em;
height: 3em;
margin: 0 -2em;
border: 0.125em solid #000;
background-color: #36393f;
border-radius: 0.3125em;
}
<div id="chatbox" class="chatbox" data-role="chatbox">
<div id="chatboxTranscript" class="chatbox-transcript"></div>
<div class="input-group">
<!-- <form action="#" onsubmit="handleChatboxFormSubmit(event);"> -->
<textarea type="text" name="chatboxInput" id="chatboxInput" /> </textarea>
<button type="submit">Submit</button>
<!-- </form> -->
</div>
</div>
I tried multiple ways of fixing using absolute positioning (still same behavior), display (did nothing), margin (moves my textarea to the left) and asking chatgpt (output nonsensical CSS that didn't work).
Is this what you're trying to achieve?
I've removed all position layout styles since they don't help much in your particular layout.
The main issue was the .input-group since it didn't have a width and you're using flex for the layout. The content would take the entire width from its parent (#chatbox) therefore the button went to the right-hand side of the screen.
To fix this, I simply added a width for the .input-group as well as a margin of auto so it now aligns nicely with #chatboxTranscript div.
#chatboxTranscript {
width: 31.25em;
background-color: #36393f;
color: #fff;
display: flex;
border: 0.125em solid #000; /* Increase border width */
border-radius: 0.3125em 0.3125em 0 0; /* Round the border */
box-sizing: border-box;
margin: 0 auto;
height: 12.5em; /* Maintain the height */
}
#chatboxInput {
height: 3.35em;
width: 37.3em; /* Keep the width the same */
background-color: #36393f; /* Keep the color the same */
border: 0.15em solid #000;
border-radius: 0 0 0.3125em 0.3125em; /* Round the border */
padding-bottom: 1.5em;
box-sizing: border-box;
margin: 0 auto;
display: flex;
}
.input-group {
display: flex;
justify-content: space-between;
width: 31.25em;
margin: 0 auto;
}
button[type='submit'] {
display: inline-block;
width: 4em;
height: 3em;
border: 0.125em solid #000;
background-color: #36393f;
border-radius: 0.3125em;
}
#chatboxTranscript {
width: 31.25em;
/* padding: 0em; */
background-color: #36393f;
color: #fff;
display: flex;
border: 0.125em solid #000; /* Increase border width */
border-radius: 0.3125em 0.3125em 0 0; /* Round the border */
box-sizing: border-box;
margin: 0 auto;
height: 12.5em; /* Maintain the height */
}
#chatboxInput {
top: -0.125em;
height: 3.35em;
left: -2.2em;
width: 37.3em; /* Keep the width the same */
background-color: #36393f; /* Keep the color the same */
border: 0.15em solid #000;
border-radius: 0 0 0.3125em 0.3125em; /* Round the border */
padding-bottom: 1.5em;
box-sizing: border-box;
margin: 0 auto;
display: flex;
/* border-top: none; */
position: relative;
}
.input-group {
display: flex;
justify-content: space-between;
}
button[type="submit"] {
position: fixed;
display: inline-block;
width: 4em;
top: -0.1em;
height: 3em;
margin: 0 -2em;
border: 0.125em solid #000;
background-color: #36393f;
border-radius: 0.3125em;
}
I edited position of button from "reletive" to "fixed". It will work in page.
I am not a html or css developer but I need to create a one of html page. It looks fairly right only I want work a few things out.
My first issue is that I cant remove the light grey box around my embeded image, I'm of the understanding this is my padding but even with it set to 0px as well as the borer and margin set to 0px I have had no luck?
The second issue I have is that when used on a smartphone the logo, textboxes and button condense toward eachother and overlap... the cause of this is tyhe keyboad that pops up the solution iscompleatly unknowen to me.
the code is as follows:
.ApplicationLogo {
position: absolute;
top: 27%;
left: 50%;
width: 120px;
height: 120px;
margin-left: -60px;
/* Half the width */
margin-top: -60px;
/* Half the height */
content: no-repeat;
background-image: url('data:image/png;base64,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');
}
.LoginField {
position: absolute;
top: 50%;
left: 50%;
width: 350px;
height: 600px;
margin-left: -175px;
/* Half the width */
margin-top: -300px;
/* Half the height */
border-radius: 25px;
opacity: 0.5;
background-color: #D3D3D3;
}
.UsernameTextbox {
position: absolute;
top: 45%;
left: 50%;
width: 285px;
height: 50px;
margin-left: -148px;
/* Half the width */
margin-top: -25px;
/* Half the height */
background-color: #ffffff;
/* Font Styling */
font-size: 18px;
text-align: center;
color: #A9A9A9;
/* Textbox Boarder Styling */
border: 3px solid #A9A9A9;
border-radius: 10px;
}
.UsernameTextbox:hover {
/* Font Styling */
font-size: 18px;
text-align: center;
color: #ff8000;
}
.UsernameTextbox:hover::placeholder {
color: transparent;
}
.PasswordTextbox {
position: absolute;
top: 57%;
left: 50%;
width: 285px;
height: 50px;
margin-left: -148px;
/* Half the width */
margin-top: -25px;
/* Half the height */
background-color: #ffffff;
/* Font Styling */
font-size: 18px;
text-align: center;
color: #A9A9A9;
/* Textbox Boarder Styling */
border: 3px solid #A9A9A9;
border-radius: 10px;
}
.PasswordTextbox:hover::placeholder {
background-color: #ffffff;
color: transparent;
}
.PasswordTextbox:hover {
/* Font Styling */
font-size: 18px;
text-align: center;
background-color: #ffffff;
color: #ff8000;
}
.PasswordTextbox:hover::placeholder {
color: transparent;
}
.LoginButton {
position: absolute;
top: 75%;
left: 50%;
width: 295px;
height: 50px;
margin-left: -148px;
/* Half the width */
margin-top: -25px;
/* Half the height */
background-color: #4CAF50;
/* Font Styling */
font-size: 18px;
text-align: center;
color: white;
/* Textbox Boarder Styling */
border: 3px solid #A9A9A9;
border-radius: 10px;
}
.LoginButton:hover {
background-color: #45a049;
}
.CopyrightFooter {
position: absolute;
top: 97%;
left: 50%;
width: 350px;
height: 50px;
margin-left: -175px;
/* Half the width */
/* Font Styling */
text-align: center;
font-family: Arial, Helvetica, sans-serif;
font-size: 10px;
color: #A9A9A9;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
<body id="BackgroundImage">
<div class="LoginField"></div>
<img class="ApplicationLogo" />
<form method="POST" action="Confirm_Login">
<div class="LogInControlls">
<input class="UsernameTextbox" type="text" name="MYUSERNAME" placeholder="Username" required><br>
<input class="PasswordTextbox" type="password" name="MYPASSWORD" placeholder="Password" required><br>
<input class="LoginButton" type="submit" value="Login">
</div>
</form>
<div class="CopyrightFooter">van Tuyl Systems copyright © 2021</div>
</body>
</html>
I'm new to CSS and web development and trying to build my own and first website. I've read a few articles related to displaying and positioning elements however I still unable to get elements positioned perfectly while resizing the browser window!.
What I am trying to accomplish is in the codepen link in the first comment below
https://codepen.io/letsimoo/pen/XWNGoGa
HTML CODE
<head>
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta charset="UTF-8">
</head>
<body class="mainBody">
<header class="mainHeader">
<div class="headerStuff">
<div class="social-list">
<div class="fb">
FB
</div>
<div class="twitter">
Twitter
</div>
<div class="instagram">
Instagram
</div>
</div>
<ul class="navigation">
<li> <b>My Projects</b> </li>
<li> <b>Gallery</b> </li>
<li> <b> About </b> </li>
<li> <b>Contact</b> </li>
</ul>
<div class="logoDiv">
<h2>Logo</h2>
</div>
</div>
<div class="HeaderLine"></div> <!-- Header Separator Line -->
</header>
</body>
CSS CODE
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}
.mainBody {
background-color: gray;
background-size: cover;
background-repeat: no-repeat;
color: white;
margin: 0px 0px 0px 20px;
/*width: 100%;*/
}
.mainHeader {
height: 80px;
}
.headerStuff {
height: auto;
display: flex;
position: relative;
align-items: bottom;
vertical-align: baseline;
width: 100%;
}
.social-list {
display: inline-flex;
position: absolute;
margin-top: 20px;
left: -10px;
}
.social-list div {
margin-left: 12px;
}
.navigation {
position: absolute;
right: 175px;
text-align: right;
height: 30px;
padding: 0px;
margin: 0px;
margin-top: 30px;
display: flex;
}
.navigation li {
background-color: #22385b;
display: inline-block;
margin-left: 5px;
padding: 7px 5px 7px 5px;
border-radius: 7px;
font-size: 20px;
width: 90px;
color: white;
}
.navigation li:hover {
background-color: #446291;
}
.navigation li a {
color: white;
font-size: 14px;
font-family: "Chakra Petch", sans-serif;
text-align: center;
text-decoration: none;
display: block;
}
ul li .prayer-window {
background-color: rgba(237, 239, 242, 0.9);
margin-top: 20px;
width: 400px;
height: 400px;
position: relative;
z-index: 1;
opacity: 0;
box-shadow: 0px 0px 100px black;
transition: 1s opacity, 5s width, 5s height;
}
.prayer-time:hover {
color: hotpink;
}
.prayer-time:active ~ .prayer-window {
opacity: 1;
}
.logoDiv {
position: absolute;
right: 0px;
}
.logoDiv img {
width: 150px;
}
.HeaderLine {
box-sizing: border-box;
height: 2px;
margin-top: 68px;
margin-right: 175px;
text-align: center;
background-color: pink;
box-shadow: 2px 2px 4px black, 0 0 30px red, 0 0 5px darkblue;
}
Please have a look to my code in the above link and try to resize the browser window to the minimum size
What the problem I'm facing?
Definitely you've notices how is the navigation elements jumped over the social media dev after resizing the browser window
So how can avoid this ugly act from the headerStuff div!??
Also please help me to improve my question if there are something wrong in my description or in the mentioned tags
Your .navigation .sosial-list are positioned absolute. That means they are out of the order of the other elements and does not take space by the other content.
As absolute positioned element .navigation is allways relative to the next parent element which is not positioned static. In your project it is .header-stuff. At the same time the margin-top moves it down from the top edge of header-stuff ...
So, if the screen becomes narrow your .header-stuff becomes narrow also. And your navigation keeps still in place: 175px from right edge of .header stuff and 30pxmargin from top ... that make it layered above your socials.
If you want to keep your structure enlarge the margin-top for .navigation so the navigation has still place enough to move below the social information.
But if you are open to change your sturcture you don't need an absolute positioning. Use a structure with block elements so socials and navigations are still beneath and don't layer over each other.
Just easy DEMO code structure example to explain the idea:
// css structure DEMO
nav {
display: block;
}
ul {
/* align ul to right */
margin-right: 0;
margin-left: auto;
}
li {
/* align li's into a line */
display: inline-block;
}
header hr {
... style your subheader line ...
}
// html structure DEMO
<header>
<div class="top-header>
... your socials ...
</div>
<nav>
<ul>
<li></li>
...
</ul>
</nav>
<hr>
</header>
Here's your updated updated CSS:
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}
.mainBody {
background-color: gray;
background-size: cover;
background-repeat: no-repeat;
color: white;
/* margin: 0px 0px 0px 20px; */
}
.headerStuff {
height: 80px;
display: flex;
position: relative;
vertical-align: baseline;
width: 100%;
justify-content: space-between;
align-items: center;
}
.social-list {
display: inline-flex;
}
.social-list div {
margin-left: 12px;
}
.navigation {
margin: 0;
}
.navigation li {
background-color: #22385b;
display: inline-block;
padding: 7px 5px 7px 5px;
border-radius: 7px;
font-size: 20px;
width: 90px;
color: white;
}
.navigation li:hover {
background-color: #446291;
}
.navigation li a {
color: white;
font-size: 14px;
font-family: 'Chakra Petch', sans-serif;
text-align: center;
text-decoration: none;
display: block;
}
ul li .prayer-window {
background-color: rgba(237, 239, 242, 0.9);
margin-top: 20px;
width: 400px;
height: 400px;
position: relative;
z-index: 1;
opacity: 0;
box-shadow: 0px 0px 100px black;
transition: 1s opacity, 5s width, 5s height;
}
.prayer-time:hover {
color: hotpink;
}
.prayer-time:active ~ .prayer-window {
opacity: 1;
}
.logoDiv h2 {
margin: 0;
}
.logoDiv img {
width: 150px;
}
.HeaderLine {
box-sizing: border-box;
height: 2px;
margin: 0 auto;
text-align: center;
background-color: pink;
box-shadow: 2px 2px 4px black, 0 0 30px red, 0 0 5px darkblue;
}
You can adjust css properties for specific screen sizes via media queries.
#media only screen and (max-width: 796px) {
//
}
PS. align-items:bottom is not really a thing. Probably you meant align-items:baseline
Ive been using simple html and css to make my new webpage. its just a gradient background with a gif in front of it. the gif has been giving me a lot of grief lately because it keeps moving out of to the right and extending the scree. i just want the gif to be centered perfectedly and at a good size right not the desktop version looks ideal but the mobile version looks so small as seen below I would just like the gif to be wider and feel the screen more without extending it.
my HTML goes as following
a,
a:focus,
a:hover {
color: #fff;
}
/* Custom default button */
.btn-default,
.btn-default:hover,
.btn-default:focus {
color: #333;
text-shadow: none;
/* Prevent inheritence from `body` */
background-color: #fff;
border: 1px solid #fff;
}
/*
* Base structure
*/
html,
body {
height: 100%;
background-repeat: no-repeat;
background-attachment: fixed;
}
body {
color: #fff;
text-align: center;
text-shadow: 0 1px 3px rgba(0, 0, 0, .5);
background: radial-gradient( circle closest-side, #d5c83d 80%, #e9e5bf, #8482e3);
}
/* Extra markup and styles for table-esque vertical and horizontal centering */
.site-wrapper {
display: table;
width: 100%;
/*height: 100%; */
min-height: 100%;
}
.site-wrapper-inner {
display: table-cell;
vertical-align: top;
}
.cover-container {
margin-right: auto;
margin-left: auto;
}
/* Padding for spacing */
.inner {
padding: 20px;
}
/*
* Header
*/
.masthead-brand {
margin-top: 10px;
margin-bottom: 10px;
}
.masthead-nav>li {
display: inline-block;
}
.masthead-nav>li+li {
margin-left: 20px;
}
.masthead-nav>li>a {
padding-right: 0;
padding-left: 0;
font-size: 30px;
font-weight: bold;
color: #fff;
/* IE8 proofing */
color: rgba(255, 255, 255, .75);
border-bottom: 2px solid transparent;
}
.masthead-nav>li>a:hover,
.masthead-nav>li>a:focus {
background-color: transparent;
border-bottom-color: #a9a9a9;
border-bottom-color: rgba(255, 255, 255, .25);
}
.masthead-nav>.active>a,
.masthead-nav>.active>a:hover,
.masthead-nav>.active>a:focus {
color: #fff;
border-bottom-color: #fff;
}
#media (min-width: 768px) {
.masthead-brand {
float: left;
}
.masthead-nav {
float: right;
}
.jumbotron {
padding-top: calc(var(--jumbotron-padding-y) * 2);
padding-bottom: calc(var(--jumbotron-padding-y) * 2);
}
}
/*
* Cover
*/
.cover {
padding: 0 20px;
}
.cover .btn-lg {
padding: 10px 20px;
font-weight: bold;
}
/*
* Affix and center
*/
#media screen and (max-width: 992px) {}
#media (min-width: 768px) {
/* Pull out the header and footer */
.masthead {
position: fixed;
top: 0;
}
/* Start the vertical centering */
.site-wrapper-inner {
vertical-align: middle;
}
<div class="site-wrapper">
<div class="site-wrapper-inner">
<div class="container">
<div class="masthead clearfix">
<div class="container inner">
<h3 class="masthead-brand"></h3>
<nav>
<ul class="nav masthead-nav">
<li class="active">Home*</li>
<li>Magazine#</li>
<li>Abouti</li>
</ul>
</nav>
</div>
</div>
<div class="innercover">
<img class="img" src="https://static.tumblr.com/y8b11bc/u05qfybi7/ezgif.com-resize.gif" ; style=" top: 0%; width: 100%; max-height: 100%; " ;></img>
</div>
Adjust your css code to change the size of the GIF depending if it's mobile or desktop. Also, adjust the div that holds the GIF to center the items.
#media (min-width: 768px) {
.img{
width: X%
}
.innercover{
display: flex;
justify-content: center;
align-items: center;
}
Fiddle here
CSS Code:
#searchbox-container {
width: 100%;
height: 80px;
clear: both;
}
.searchbox {
width: 100%;
margin-left:2.5%;
margin-right: 2.5%;
}
.searchbox input {
width: 250px;
height: 18px;
-webkit-border-radius: 20;
-moz-border-radius: 20;
border-radius: 20px;
padding: 10px 20px 10px 20px;
border: 1px solid #16a085;
}
.searchbox input:hover {
width: 250px;
height: 18px;
-webkit-border-radius: 20;
-moz-border-radius: 20;
border-radius: 20px;
padding: 10px 20px 10px 20px;
border: 1px solid #e67e22;
}
/* SECTIONS */
.section-search {
clear: both;
padding: 0px;
margin: 0px;
}
/* COLUMN SETUP */
.col-search {
display: block;
float:left;
margin: 1% 0 1% 5%;
}
.col-search:first-child { margin-left: 0; }
/* GROUPING */
.group-search:before,
.group-search:after {
content:"";
display:table;
}
.group-search:after {
clear:both;
}
.group-search {
zoom:1; /* For IE 6/7 */
}
.btn-search {
-webkit-border-radius: 25;
-moz-border-radius: 25;
border-radius: 25px;
-webkit-box-shadow: 0px 0px 0px #666666;
-moz-box-shadow: 0px 0px 0px #666666;
box-shadow: 0px 0px 0px #666666;
color: #ffffff;
font-size: 16px;
background: #16a085;
padding: 10px 40px 10px 40px;
text-decoration: none;
}
.btn-search:hover {
background: #1abc9c;
text-decoration: none;
}
/* GRID OF THREE */
.search-span_3_of_3 {
width: 100%;
}
.search-span_2_of_3 {
width: 65%;
}
.search-span_1_of_3 {
width: 30%;
}
/* GO FULL WIDTH AT LESS THAN 480 PIXELS */
#media only screen and (max-width: 480px) {
.col-search {
margin: 2% 0 2% 0%;
}
}
#media only screen and (max-width: 480px) {
.search-span_3_of_3 {
width: 100%;
}
.search-span_2_of_3 {
width: 100%;
}
.search-span_1_of_3 {
width: 100%;
}
}
HTML Code:
<div id="searchbox-container">
<div class="searchbox">
<center>
<form>
<div class="section-search group-search">
<div class="col-search search-span_1_of_3">
<input name="city" type="text" placeholder="City" />
</div>
<div class="col-search search-span_1_of_3">
<input name="category" type="text" placeholder="Category" />
</div>
<div class="col-search search-span_1_of_3">
<a class="btn-search" href="#">Search</a>
</div>
</div>
</form>
</center>
</div>
</div>
PROBLEM DEFINITION:
Please visit this for the current scenario "http://jsfiddle.net/Hq6UL/"
1. I am having the problem of overlapping of the two text boxes when screen resolution is lessened.
2. The search button is not aligned with the text boxes. they all need to be in the same horizontal plain.
3. Currently when i hover over the textboxes the color changes to orange but it should be like when i click on the box and even if y mouse moves out from the hover, the color of the border should still remain orange till i am typing inside the box. once i am done typing and i go to the other text box the previous box border should become green and the 2nd box which was green bordered, should turn orange when i am now typing into it.
4. I would like to have tips on how to make the text boxes more attrative, keeping the flat designing style in consideration.
Please Help!!!
Regards!!!
Your main problem comes from the fact that DIV default to block display, while the A (anchor) default to inline display.
So, first turn the A to block display by adding "display: block;" to your ".btn-search" class.
Then, you will notice that it's only 38px height while the other are 40px height. As you have a top & bottom padding of 10px, just fix the height of your same A to 20px by adding a "height: 20px;" to your ".btn-search" class.
I made the update in the JSFiddle and it works as you want:
http://jsfiddle.net/Hq6UL/2/
.btn-search {
-webkit-border-radius: 25;
-moz-border-radius: 25;
border-radius: 25px;
-webkit-box-shadow: 0px 0px 0px #666666;
-moz-box-shadow: 0px 0px 0px #666666;
box-shadow: 0px 0px 0px #666666;
color: #ffffff;
font-size: 16px;
background: #16a085;
padding: 10px 40px 10px 40px;
text-decoration: none;
display: block;
height: 20px;
}
I also added this code so it keeps the color when the input field has the focus:
.searchbox input:focus {
width: 250px;
height: 18px;
-webkit-border-radius: 20;
-moz-border-radius: 20;
border-radius: 20px;
padding: 10px 20px 10px 20px;
border: 1px solid #e67e22;
}
Use this code in the CSS :
/* GO FULL WIDTH AT LESS THAN 850 PIXELS */
#media only screen and (max-width: 850px) {
.col-search {
margin: 2% 0 2% 0%;
}
}
#media only screen and (max-width: 850px) {
.search-span_3_of_3 {
width: 100%;
}
.search-span_2_of_3 {
width: 100%;
}
.search-span_1_of_3 {
width: 100%;
}
}
EDIT :: For the problem with the vertical alignment :
<a class="btn-search" href="#" style="vertical-align: -10px;">Search</a>