بطريقة اوتماتيكية كما الفليكس بوكس وليس بحساب العرض وتقسيمه عليهم.
الflex-basis or grow for example
نعم بالفعل هذه الخاصية هي short hand لثلاث خصائص flex-grow و flex-shrink و flex-basis يمكنك وضع الثلاث قيم معا في سطر واحد .
وما قمنا به هو وضع 1 لقيمة flex-grow و يمكنك إستبدال flex ب flex-grow إذا أردت .
أما بخصوص عمل break بعد عدد عناصر معين يمكنك إستخدام الخاصية flex-basis هكذا :
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <style> .container { display: flex; flex-wrap: wrap; } .item { flex-grow: 1; flex-basis: 30%; box-sizing: border-box; padding: 10px; border: 1px solid #000; } </style> </head> <body> <div class="container"> <div class="item">1</div> <div class="item">2</div> <div class="item">3</div> <div class="item">4</div> <div class="item">5</div> </div> </body> </html>
لاحظ هنا إستخدمنا الخاصة flex-basis ووضعناها 30% أي أننا نريد ثلاث عناصر فقط في الصف ويمكنك تحديد النسبة بناء على عدد العناصر التي تريدها ويمكنك إستخدام ال short hand كالتالي :
.item { flex: 1 1 30%; box-sizing: border-box; padding: 10px; border: 1px solid #000; }
وهذه هي النتيجة التي ستحصل عليها
التعليقات