Як выкарыстоўваць CSS, каб усталяваць вышыню ў HTML-элемент на 100%

Шырока задаюць пытанне ў дызайне сайта з'яўляецца «як усталяваць вышыню элемента да 100%»?

Гэта можа здацца просты адказ. Можна проста выкарыстоўваць CSS , каб усталяваць вышыню элемента да 100%, але гэта не заўсёды расцягваць гэты элемент , каб адпавядаць ўсё акно браўзэра. Давайце высветлім, чаму гэта адбываецца і што вы можаце зрабіць, каб дасягнуць гэтага візуальнага стылю.

Пікселі і адсоткі

Пры вызначэнні вышыні элемента , выкарыстоўваючы ўласцівасць CSS і значэнне , якое выкарыстоўвае пікселі, то гэты элемент будзе займаць так шмат вертыкальнага прасторы ў браўзэры.

Напрыклад, пункт з вышынёй: 100px; будзе займаць 100 пікселяў вертыкальнага прасторы ў вашым design.It не мае значэння, наколькі больш акно браўзэра, то гэты элемент будзе 100 пікселяў ў вышыню.

Адсоткавыя суадносіны працуе інакш, чым пікселі. Паводле спецыфікацыі W3C, працэнт вышыні вылічаецца адносна вышыні кантэйнера. Так што, калі вы паставіце пункт з вышынёй: 50%; ўнутры DIV з вышынёй 100px, абзац будзе 50 пікселяў ў вышыню, што складае 50% з яго бацькоўскага элемента.

Чаму ў працэнтах Вышыні няўдачы

Калі вы распрацоўваеце вэб-старонку, і ў вас ёсць слупок, які вы хацелі б узяць на сябе ўсю вышыню акна, натуральны нахіл, каб дадаць вышыню: 100%; да гэтага элементу. У рэшце рэшт, калі вы ўсталюеце шырыню ў шырыню: 100%; элемент будзе займаць усё гарызантальнае прастору старонкі, так што вышыня павінна працаваць так жа, праўда? На жаль, гэта не так.

Каб зразумець, чаму гэта адбываецца, вы павінны разумець, як браўзэры інтэрпрэтуюць вышыню і шырыню. Вэб-браўзэры вылічыць агульную даступную шырыню ў залежнасці ад як шырока адкрываецца акно браўзэра. Калі вы не ўсталёўваць якія-небудзь значэнні шырыні на дакументах, браўзэр будзе аўтаматычна выцякаць змесціва, каб запоўніць усю шырыню акна (шырыня 100% па змаўчанні).

Значэнне Вышыня разлічваецца інакш, чым шырыня. На самай справе, браўзэры не ацаніць вышыню на ўсіх, калі змест не так доўга, што яна выходзіць за межы акна прагляду (што патрабуе пракруткі) або калі вэб-дызайнер ўсталёўвае абсалютную вышыню элемента на старонцы. У адваротным выпадку, браўзэр проста дазваляе паток кантэнту ў межах шырыні акна прагляду, пакуль не даходзіць да канца. Вышыня фактычна не разлічана на ўсіх.

Праблемы ўзнікаюць, калі вы ўсталюеце вышыню ў працэнтах ад элемента, які мае бацькоўскія элементы без вышыні, усталяванай - іншых слоў, бацькоўскія элементы маюць вышыню па змаўчанні: аўто; , Вы, па сутнасці, папрасіўшы браўзэр, каб вылічыць вышыню ад нявызначанага значэння. Так што раўнялася б нулявое значэнне, то вынік у тым, што браўзэр не робіць нічога.

Калі вы хочаце ўсталяваць вышыню на вашых вэб - старонак у працэнтах, вы павінны ўсталяваць вышыню кожнага бацькоўскага элемента , які вы хочаце вышыня вызначана. Іншымі словамі, калі ў вас ёсць старонка, як гэта:





ўтрыманне тут



Хутчэй за ўсё , вы хочаце , DIV і пункт у ім , каб мець вышыню на 100%, але на самой справе Div мае два бацькоўскіх элементаў:

і. Для таго, каб вызначыць вышыню спраў да адноснай вышыні, вы павінны ўсталяваць вышыню цела і HTML элементаў, а таксама.

Такім чынам, вы павінны выкарыстоўваць CSS, каб усталяваць вышыню не толькі DIV, але і кузаўных элементаў і HTML. Гэта можа быць праблемай, так як вы можаце хутка атрымаць заваленыя ўвесь час усталяваны на 100% вышыні, толькі для дасягнення гэтага жаданага эфекту.

Некаторыя рэчы, якія варта звярнуць увагу пры працы з 100% Хайтс

Зараз, калі вы ведаеце, як усталяваць вышыню вашых элементаў старонкі на 100%, гэта можа быць цікава выйсці і зрабіць гэта на ўсе старонкі, але ёсць некалькі рэчаў, якія вы павінны ведаць:

Каб выправіць гэта, вы можаце ўсталяваць вышыню элемента, а таксама. Калі вы ўсталюеце яго на аўто, паласы пракруткі будуць з'яўляцца, калі яны неабходныя, але знікаюць, калі яны не з'яўляюцца. Гэта фіксуе візуальны разрыў, але ён дадае паласы пракруткі, дзе вы не можаце хацець іх.

Выкарыстанне краявіднага экрана Адзінкі

Іншым спосабам вы можаце вырашыць гэтую праблему, каб эксперыментаваць з CSS VIEWPORT адзінак. З дапамогай блока вышыні краявіднага вымярэння, вы можаце элементы памеру , каб заняць пэўную вышыню акна прагляду, і што будзе мяняцца па меры змяненняў краявіднага экрана! Гэта выдатны спосаб атрымаць 100% візуальныя вышыні на старонцы, але да гэтага часу ім быць гнуткімі для розных прылад і памераў экрана.