如何在所有屏幕上使尺寸看起来相同

时间:2016-09-25 16:10:49

标签: html css alignment

所以,我正在两个网站上工作,填充似乎在不同的屏幕上发生巨大变化,我想知道这是否可能是由于我使用的单位?还是特定的CSS标签?但是,我希望有人能为我解决这个问题

两位不断变化的代码:

codepen

.divider {
  background-color: #3498db;
  padding-top: 5%;
  padding-bottom: 5%;
  font-family: Open Sans;
  font-weight: 300;
  text-align: center;
}
.divider h1 {
  margin-bottom: 10px;
  margin-top: 0%;
  padding-top: 20%;
  font-weight: 500;
  color: white;
}
.divider p {
  color: white;
  margin-bottom: 5px;
  font-family: Open Sans;
  text-align: center;
}
.divider button {
  padding: 10px;
  height: 15%;
  cursor: auto;
  width: 17%;
  margin-top: 30px;
  border-radius: 50px;
  text-align: center;
  color: white;
  border: white 1px solid;
  background-color: #3498db;
}
.divider button:hover {
  background-color: white;
  color: black;
  transition: all 0.3s ease 0s;
}
<div class="divider">
  <h1>See Something You Like?</h1>
  <p>Feel free to contact us at any time and we’ll have someone reply to you 6 as soon as possible.
    <br>industry's standard dummy text ever since the 1500s
    <br>
    <br>Whenever you’re ready, email us with the details you want on your website, and we will
    <br>respond with a rough price.</p>
  <a href="mailto:hello@baseframe.co">
    <button>Email</button>
  </a>
</div>

  • 就此而言,顶部填充在不同的屏幕上变得超大(或者有时会变小)。

codepen

* {
  margin: 0 auto;
  padding: 0;
}
html {
  height: 100%;
}
body {
  font-family: 'Open Sans';
  font-weight: 400;
  height: 100%;
  background-color: #ddd;
}
.nav {
  background: rgba(0, 0, 0, 0);
  position: absolute;
  width: 100%;
}
.nav ul {
  text-align: right;
  vertical-align: middle;
  margin-right: 15px;
  margin-top: 15px;
  font-size: 1.1em;
}
.nav li {
  padding-top: 5px;
  list-style: none;
  display: inline-block;
  padding: 15px;
}
.nav a {
  margin-top: 17px;
  bottom: 0;
  display: inline-block;
  color: white;
  text-decoration: none;
}
.nav a:hover {
  color: #3498db;
  transition: ease 0.5s all 0s;
}
.nav hr {
  opacity: 0.2;
  width: 95%;
  text-align: center;
}
.nav-logo {
  vertical-align: middle;
  top: 0;
  float: left;
  width: 5%;
  display: inline-block;
}
.nav-logo img {
  width: 250%;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
}
/*-------------------Home-Page-------------------*/

.home-page {
  background-image: url("http://baseframe.co/getanimus/img/cover1.jpg");
  background-size: cover;
  background-position: top;
  background-attachment: fixed;
  padding-bottom: 17%;
  text-align: center;
}
.home-page h1 {
  color: white;
  padding-top: 15%;
  font-size: 5em;
  text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
}
.home-page input {
  cursor: auto;
}
.home-page p {
  font-weight: 300;
  color: white;
  margin-bottom: 15px;
}
button#infl {
  background-color: #3498db;
  color: white;
  font-size: 1em;
  width: 15%;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
  font-family: montserrat;
  padding: 15px;
  margin: 5px;
  border-top-left-radius: 2em;
  border-top-right-radius: 2em;
  border-bottom-left-radius: 2em;
  border-bottom-right-radius: 2em;
  border: none;
  cursor: auto;
}
button#brands {
  background-color: white;
  color: #7f8c8d;
  font-size: 1em;
  width: 15%;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
  font-family: montserrat;
  padding: 15px;
  margin: 5px;
  border-top-left-radius: 2em;
  border-top-right-radius: 2em;
  border-bottom-left-radius: 2em;
  border-bottom-right-radius: 2em;
  border: none;
  cursor: auto;
}
button#brands:hover {
  opacity: 0.8;
  transition: all 0.3s ease 0s;
}
button#infl:hover {
  opacity: 0.8;
  transition: all 0.3s ease 0s;
}
/*-------------------About-------------------*/

.about {
  background-color: white;
  padding-bottom: 10%;
}
.about h1 {
  text-align: left;
  margin-left: 20%;
  margin-top: 5%;
}
.about hr {
  background-color: #3498db;
  height: 5px;
  border: none;
  margin-top: 2%;
  margin-left: 20%;
  width: 5%;
  text-align: left;
  float: left
}
.about p {
  margin-left: 20%;
  margin-right: 20%;
  line-height: 30px;
  margin-top: 5%;
  text-align: left;
}
<div class="nav">
  <ul>
    <li class="nav-logo">
      <img src="http://baseframe.co/getanimus/img/logo_white.png">
    </li>
    <li><a href="#">Home</a></li>
    <li><a href="#">Influencers</a></li>
    <li><a href="#">Brands</a></li>
    <li><a href="#">Contact</a></li>
    <hr>
</div>

<div class="home-page">
  <h1>Animus Digital</h1>
  <p>Premium Talent Management Agency</p>
  <button id="infl">Influencers</button>
  <button id="brands">Brands</button>
</div>

  • 由于某种原因,此网站导航与左侧的徽标无法正确对齐。此外,在1920 x 1080的屏幕上,按钮非常宽。

真的很感激任何帮助。感谢。

2 个答案:

答案 0 :(得分:0)

这些元素的大小在不同屏幕上更改的原因是因为您使用%而不是px。 %根据浏览器的大小调整大小。

您应该使用CSS Media queries

答案 1 :(得分:0)

对于第一种情况,因为您在填充中使用%,这会导致在不同情况下出现意外行为。

  

对于&#34; n%&#34; margin(和padding)是相同的   margin-top / margin-right / margin-bottom / margin-left,所有四个都必须   相对于同一个基地。如果顶部/底部使用不同的基础   左/右&#39;,然后&#34; n%&#34; margin(和padding)并不意味着相同   四面都有。

     

(另请注意,相对于宽度的上/下边距可以启用   一个奇怪的CSS hack,允许你指定一个不变的盒子   纵横比...即使重新调整框。)   % with margin/padding