de-vraag
  • Pytania
  • Tagi
  • Użytkownicy
Powiadomienia
Nagrody
Rejestracja
Po zarejestrowaniu się, będziesz otrzymywać powiadomienia o odpowiedziach i komentarzach do swoich pytań.
Zaloguj się
Brak tłumaczeń pasujących do Twojego wyszukiwania Jeśli masz już konto, zaloguj się, aby sprawdzić nowe powiadomienia.
Za dodane pytania, odpowiedzi i komentarze przewidziane są nagrody.
Więcej
Źródło
Edytuj
Burak Erdem
Burak Erdem
Question

Jak wyśrodkować div w pionie dla wszystkich przeglądarek?

Chcę wyśrodkować div w pionie za pomocą CSS. Nie chcę tabel ani JavaScript, ale tylko czysty CSS. Znalazłem kilka rozwiązań, ale wszystkie z nich nie obsługują Internet Explorera 6.

<body>
    <div>Div to be aligned vertically</div>
</body>

Jak mogę wyśrodkować div w pionie we wszystkich głównych przeglądarkach, włączając Internet Explorer 6?

1305 2008-12-28T12:57:16+00:00 3
John Slegers
John Slegers
Edytowane pytanie 1. maja 2018 в 11:05
Programowanie
cross-browser
css
alignment
vertical-alignment
centering
To pytanie ma 1 odpowiedź w języku angielskim, aby je przeczytać zaloguj się na swoje konto.
Solution / Answer
 Billbad
Billbad
31. maja 2011 в 3:13
2011-05-31T03:13:13+00:00
Więcej
Źródło
Edytuj
#8713720

Poniżej znajduje się najlepsze rozwiązanie, jakie udało mi się zbudować do pionowego i poziomego wyśrodkowania pudełka z treścią o stałej szerokości i elastycznej wysokości. Zostało ono przetestowane i działa dla ostatnich wersji Firefoxa, Opery, Chrome i Safari.

.outer {
  display: table;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.middle {
  display: table-cell;
  vertical-align: middle;
}

.inner {
  margin-left: auto;
  margin-right: auto;
  width: 400px;
  /*whatever width you want*/
}
<div class="outer">
  <div class="middle">
    <div class="inner">
      <h1>The Content</h1>
      <p>Once upon a midnight dreary...</p>
    </div>
  </div>
</div>

Zobacz działający przykład z dynamiczną zawartością

Wbudowałem trochę dynamicznej zawartości, aby przetestować elastyczność i chciałbym wiedzieć, czy ktoś widzi jakieś problemy z tym. Powinno to działać dobrze również dla wyśrodkowanych nakładek -- lightbox, pop-up, itp.

Michał Woliński
Michał Woliński
Edytowana odpowiedź 16. listopada 2018 в 5:06
1325
0
Anonimowy użytkownik
28. grudnia 2008 в 3:15
2008-12-28T15:15:06+00:00
Więcej
Źródło
Edytuj
#8713718

Właściwie potrzebujesz dwóch div'ów do pionowego wyśrodkowania. Div zawierający treść musi mieć szerokość i wysokość.

#container {
  position: absolute;
  top: 50%;
  margin-top: -200px;
  /* half of #content height*/
  left: 0;
  width: 100%;
}

#content {
  width: 624px;
  margin-left: auto;
  margin-right: auto;
  height: 395px;
  border: 1px solid #000000;
}
<div id="container">
  <div id="content">
    <h1>Centered div</h1>
  </div>
</div>

Oto wynik

Vadim Ovchinnikov
Vadim Ovchinnikov
Edytowana odpowiedź 3. lipca 2017 в 9:53
134
0
Anonimowy użytkownik
28. grudnia 2008 в 5:09
2008-12-28T17:09:26+00:00
Więcej
Źródło
Edytuj
#8713719

Niestety - ale nie jest to zaskakujące - rozwiązanie jest bardziej skomplikowane niż można by sobie tego życzyć. Również niestety, będziesz musiał użyć dodatkowych divów wokół diva, który chcesz mieć wyśrodkowany w pionie.

W przypadku przeglądarek zgodnych ze standardami, takich jak Mozilla, Opera, Safari itp. należy ustawić zewnętrzny div jako table, a wewnętrzny div jako table-cell - które mogą być następnie wyśrodkowane w pionie. W przypadku Internet Explorera, należy pozycjonować wewnętrzny div absolutnie wewnątrz zewnętrznego div, a następnie określić top jako 50%. Poniższe strony dobrze objaśniają tę technikę, a także zawierają próbki kodu:

  • Vertical Centering in CSS
  • Vertical Centering in CSS with Unknown Height (Internet Explorer 7 compatible) (już nieaktualne)
  • Centrowanie w pionie w CSS z nieznaną wysokością (Internet Explorer 7 compatible)]4 (artykuł zarchiwizowany dzięki Wayback Machine)

Istnieje również technika wykonywania pionowego centrowania za pomocą JavaScript. Demonstruje ją Vertical alignment of content with JavaScript & CSS.

Peter Mortensen
Peter Mortensen
Edytowana odpowiedź 17. marca 2018 в 12:12
21
0
Dodaj pytanie
Kategorie
Wszystkie
Technologia
Kultura / Rekreacja
Życie / Sztuka
Nauka
Profesjonalny
Biznes
Użytkownicy
Wszystkie
Nowy
Popularny
1
Jasur Fozilov
Zarejestrowany 8 godzin temu
2
Zuxriddin Muydinov
Zarejestrowany 23 godziny temu
3
Денис Анненский
Zarejestrowany 3 dni temu
4
365
Zarejestrowany 1 tydzień temu
5
True Image
Zarejestrowany 1 tydzień temu
DE
EL
ES
FR
ID
IT
JA
KO
LT
LV
NL
PL
PT
RU
SK
SL
TR
ZH
© de-vraag 2022
Źródło
stackoverflow.com
na podstawie licencji cc by-sa 3.0 z przypisaniem