আপনি ব্যবহার করতে পারেন line-height: 50px;, আপনার প্রয়োজন হবে না vertical-align: middle;।
ডেমো
উপরে, যদি আপনি একাধিক লাইনের করেছি ব্যর্থ হবে, যাতে যদি আপনি ব্যবহার করে আপনার টেক্সট মোড়ানো পারেন spanব্যবহার তুলনায় এবং display: table-cell;এবং display: table;সহ vertical-align: middle;, এছাড়াও ব্যবহার করতে ভুলবেন না width: 100%;জন্য#abc
ডেমো
#abc{
font:Verdana, Geneva, sans-serif;
font-size:18px;
text-align:left;
background-color:#0F0;
height:50px;
display: table;
width: 100%;
}
#abc span {
vertical-align:middle;
display: table-cell;
}
আমি এখানে অন্য সমাধানের কথা ভাবতে পারি তা হল transformসম্পত্তি ব্যবহার করা translateY()যেখানে Yস্পষ্টতই ওয়াই অক্ষের জন্য দাঁড়িয়ে আছে। এটি বেশ সোজা এগিয়ে আছে ... আপনাকে যা করতে হবে উপাদানের অবস্থান সেট করা হয় প্রয়োজন absoluteএবং পরে অবস্থান 50%থেকে topএবং ঋণাত্মক সঙ্গে এটি অক্ষ থেকে অনুবাদ-50%
div {
height: 100px;
width: 100px;
background-color: tomato;
position: relative;
}
p {
position: absolute;
top: 50%;
transform: translateY(-50%);
}
ডেমো
মনে রাখবেন যে পুরানো ব্রাউজারগুলিতে এটি সমর্থিত হবে না, উদাহরণস্বরূপ আই 8, তবে আপনি যথাক্রমে আই 9 -ms, -mozএবং ক্রোম এবং ফায়ারফক্সের অন্যান্য পুরানো ব্রাউজার সংস্করণগুলি তৈরি করতে এবং -webkitউপসর্গগুলি তৈরি করতে পারেন ।
উপর আরও তথ্যের জন্য transform, আপনি এখানে উল্লেখ করতে পারেন ।