2016-04-04 2 views
1

Моя цель состоит в том, чтобы моя электронная почта была расположена в центре моей страницы. Я дал <div class=section4>position: relative и мой #mailicon a position:absolute, чтобы получить значок внизу моего div. Это сработало, но теперь мой значок всегда попадает вправо и больше не сосредотачивается.img (позиция: абсолютная) в контейнере (позиция: относительная) не находится в центре

Как я могу центрировать его обратно к середине, сохраняя его в нижней части моего div? Кроме того, я создаю отзывчивый веб-сайт, сначала мобильный ... так что наиболее отзывчивое решение, тем лучше! :) спасибо !!

Вот мой HTML:

<div class="section section4"> 
     <img src="icons/ML-network.gif" alt="icon3"> 
     <h1>...</h1> 
     <p class="ultralight">...</p> 
     <a href="mailto:[email protected]"><img id="mailicon" src="icons/email-icon%20color.png" alt="mail icon"></a> 
</div> 

и CSS:

.section { 
    height: 100vh; 
    width: 100%; 
    text-align: center; 
} 
.section4 { 
    position: relative; 
} 
#mailicon { 
    width: 15%; 
    position: absolute; 
    bottom: 0; 
} 

ответ

2

Для изготовления center элемент с position: absolute вы должны установить left: 0; right: 0; margin: auto; так:

#mailicon { 
    width: 15%; 
    position: absolute; 
    bottom: 0; 
    left: 0; 
    right: 0; 
    margin: auto; 
} 

JSFiddle

или использовать translate:

#mailicon { 
    width: 15%; 
    position: absolute; 
    bottom: 0; 
    left: 50%; 
    transform: translate(-50%,0); 
} 

JSFiddle

+0

Awesome! это сработало! Есть ли тот, который особенно лучше с отзывчивой точки зрения? или они работают одинаково? благодаря! –

+0

Ваш прием, оба они одинаковы, но я рекомендую первый метод, потому что он работает в старом браузере, некоторые браузеры не поддерживают 'translate'. – Pedram

0

Вы могли бы изменить код CSS для этого:

#mailicon { 
    width: 15%; 
    margin: auto; 
    position: absolute; 
    bottom: 0; 
    right: 0; 
    left: 0; 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^