විවිධ අවස්ථා පරීක්ෂා කිරීමෙන් පසුව, මෙය හොඳම විසඳුම බව මම විශ්වාස කරමි:
html {
width: 100%;
height: 100%;
display: table;
}
body {
width: 100%;
display: table-cell;
}
html, body {
margin: 0px;
padding: 0px;
}
බව එය ගතික ය html
සහ body
ඒවායේ අන්තර්ගතයන් පිටාර ගලා නම් අංග ස්වයංක්රීයව පුළුල් වනු ඇත. ෆයර්ෆොක්ස්, ක්රෝම් සහ අයිඊ 11 හි නවතම අනුවාදයෙන් මම මෙය පරීක්ෂා කළෙමි.
මෙහි සම්පූර්ණ ප්රහේලිකාව බලන්න (ඔබ මේසයට වෛර කරන්නන් සඳහා, ඔබට සෑම විටම එය භාවිතා කළ හැකිය.
https://jsfiddle.net/71yp4rh1/9/
එසේ පැවසීමත් සමඟ, මෙහි පළ කර ඇති පිළිතුරු සමඟ ගැටළු කිහිපයක් තිබේ .
html, body {
height: 100%;
}
ඉහත CSS භාවිතා කිරීමෙන් මෙහි අන්තර්ගතය පිටාර ගැලුවහොත් html සහ ශරීර මූලද්රව්යය ස්වයංක්රීයව ප්රසාරණය නොවනු ඇත:
https://jsfiddle.net/9vyy620m/4/
ඔබ අනුචලනය කරන විට, පුනරාවර්තන පසුබිම බලන්න? මෙය සිදුවන්නේ ළමා මේසයේ පිටාර ගැලීම නිසා ශරීර මූලද්රව්යයේ උස වැඩි වී නැති බැවිනි. වෙනත් බ්ලොක් අංගයක් මෙන් එය පුළුල් නොවන්නේ ඇයි? මට විශ්වාස නැහැ. මම හිතන්නේ බ්රව්සර් මෙය වැරදි ලෙස හසුරුවයි.
html {
height: 100%;
}
body {
min-height: 100%;
}
ඉහත පෙන්වා ඇති පරිදි ශරීරයේ අවම උස 100% ක් තැබීම වෙනත් ගැටළු ඇති කරයි. ඔබ මෙය කරන්නේ නම්, මෙහි පෙන්වා ඇති පරිදි ළමා කොට් div ාශයක් හෝ මේසයක් ප්රතිශතයක උසකින් යුක්ත බව ඔබට සඳහන් කළ නොහැක:
https://jsfiddle.net/aq74v2v7/4/
මෙය යමෙකුට උපකාරී වේ යැයි සිතමි. මම හිතන්නේ බ්රව්සර් මෙය වැරදි ලෙස හසුරුවයි. දරුවන් පිටාර ගැලුවහොත් ශරීරයේ උස ස්වයංක්රීයව විශාල වන බව මම බලාපොරොත්තු වෙමි. කෙසේ වෙතත්, ඔබ 100% උස සහ 100% පළල භාවිතා කරන විට එය සිදු නොවන බව පෙනේ.