Tag Archives: লেআউট

সিএসএস লেআউট – width এবং max-width (বাংলায়) (CSS Layout – width and max-width in Bangla)

Huge Sell on Popular Electronics

width, max-width এবং margin: auto এর ব্যবহার

 

পূর্ববর্তী অধ্যায় এ উল্লেখ করা হয়েছিল যে, block-level এলিমেন্ট সবসময়ই ব্যবহারযোগ্য পূর্ণ প্রসস্থ জায়গা দখল করে (ডানে ও বায়ে যতটা সম্ভব প্রসারিত হয়)

block-level এলিমেন্ট এর প্রসস্থতা নির্ধারণ করে দিলে ধারক এর প্রসারিত হওয়া বন্ধ করে দেয়া যেতে পারে। তারপর, আপনি মার্জিন auto হিসেবে সেট করে দিতে পারেন, এর ধারক এর মধ্যে এলিমেন্ট হরিজেন্টালি সেন্টার হিসেবে। এলিমেন্টটি নির্দিষ্ট করা প্রসস্ততা পর্যন্তিই জায়গা দখল করতে পারবে এবং বাকি খালি জায়গা দুই মার্জিন এর মধ্যে সমানভাবে ভাগ হবে।

যখন ব্রাউজার উইন্ডো এর আকার এলিমেন্ট এর প্রসস্থতা থেকে ছোট হবে তখন <div> সমস্যা সৃষ্টি করবে। তখন ব্রাউজার একটি horizontal scrollbar যোগ করবে।

এর সমাধান হচ্ছে max-width ব্যবহার করা, এটি ছোট উইন্ডোতে ব্রাউজার হ্যান্ডলিং সহজ করে। যখন ছোট কোন ডিভাইস এ সাইট ভিজিট করা হয় তখন এটি খুবই গুরুত্বপূর্ণ।

টিপস: দুটি div এর মধ্যে পার্থক্য বোজার জন্য ব্রাউজার উইন্ডোকে 500px এর চেয়ে ছোট করুন।

এখানে দুটি div এর উদাহরণ দেয়া হলো:


div.ex1 {
     width: 500px;
     margin: auto;
     border: 3px solid #8AC007;
 }
 
 div.ex2 {
     max-width: 500px;
     margin: auto;
     border: 3px solid #8AC007;
 }

 

 

 

 

 

 

 

সিএসএস লেআউট – ইনলাইন-ব্লক (বাংলায়) (CSS Layout – inline-block in bangla)

Huge Sell on Popular Electronics

ইনলাইন-ব্লক মান

এখন অনেক কাল পরে বক্স এর গ্রিড তৈরি সম্ভব যা float প্রোপার্টি ব্যবহার করলে ব্রাউজার এর প্রসস্থতা অনুসারে পূর্ণ এবং সুন্দরভাবে ফিট হয়ে যায় (যখন ব্রাউজার এর আকার পরিবর্তন করা হয়)।

display প্রোপার্টি এর inline-block মান এটিকে আরও সহজ করেছে।

inline-block এলিমেন্ট inline এলিমেন্ট এর মতই, কিন্তু এদের প্রসস্ততা ও উচ্চতা নির্ধারণ করা যায়।

উদাহরণ

পুরাতন পদ্ধতি অনুসারে float ব্যবহার করা (floating বক্স এর পরে আমাদের clear প্রোপার্টিও নির্ধারণ করে দিতে হয়)


.floating-box {
     float: left;
     width: 150px;
     height: 75px;
     margin: 10px;
     border: 3px solid #8AC007; 
 }
 
 .after-box {
     clear: left;
 }

 

 

একই কাজ display প্রোপার্টি এর inline-block মান নির্ধারণ করে দিয়েও করা যায় (কোন clear প্রোপার্টি এর পয়োজন হয় না)


.floating-box {
     display: inline-block;
     width: 150px;
     height: 75px;
     margin: 10px;
     border: 3px solid #8AC007; 
 }

 

 

 

 

এইচটিএমএল প্রতিক্রিয়াশীল ওয়েব ডিজাইন (HTML Responsive Web Design)

Huge Sell on Popular Electronics

স্বর্ণা আখতার

 

প্রতিক্রিয়াশীল ওয়েব ডিজাইন এর প্রধান কাজ ই হল আপনার ওয়েব সাইটকে বিভিন্ন ডিভাইস যেমন, মোবাইল বা কম্পিউটার এর লেআউট এর সাথে খাপ খাওয়ানো। এটি আপনার ওয়েব সাইটকে সহজবোধ্য ও সুখপাঠ্য করে গড়ে তোলে।

প্রতিক্রিয়াশীল ওয়েব ডিজাইন লেআউট যেভাবে তৈরি করবেন

প্রতিক্রিয়াশীল ওয়েব ডিজাইন আপনাকে নিজেই অথবা আপনি কিভাবে ফুটিয়ে তুলবেন সেটার উপর নির্ভর করবে।

নিচে একটি উদাহরন দেয়া হল


<!DOCTYPE html>
 <html lang="en-US">
 <head>
 <style>
 .city {
     float: left;
     margin: 5px;
     padding: 15px;
     width: 300px;
     height: 300px;
     border: 1px solid black;
 } 
 </style>
 </head>
 <body>
 
 <h1>W3Schools Demo</h1>
 <h2>Resize this responsive page!</h2>
 
 <div class="city">
   <h2>London</h2>
   <p>London is the capital city of England.</p>
   <p>It is the most populous city in the United Kingdom, with a metropolitan area of over 13 million inhabitants.</p>
 </div>
 
 <div class="city">
   <h2>Paris</h2>
   <p>Paris is the capital and most populous city of France.</p>
 </div>


 

বুটস্ট্র্যাপ ব্যবহারের মাধ্যমে

আগেকার বিদ্যমান সিএসএস ফ্রেমওয়ার্ক এর মাধ্যমেও প্রতিক্রিয়াশীল ওয়েব ডিজাইন বানানো যায়। আর এখানে বুটস্ট্র্যাপ ই হল এইচ টি এম এল, সিএসএস এবং যে এস ফ্রেমওয়ার্ক এর সবচেয়ে জনপ্রিয় পদ্ধতি ।

বুটস্ট্র্যাপ আপনার সাইট কে যে কোন সাইজ যেমন, ল্যাপটপ বা কম্পিউটার এ ভালোভাবে দেখাতে সহায়তা করে।

উদাহরের সাহায্যে দেখানো হল


<!DOCTYPE html>
 <html>
 <head>
   <meta charset="utf-8">
   <meta name="viewport" content="width=device-width, initial-scale=1">
   <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
 </head>
 <body>
 
 <div class="container">
 
 <div class="jumbotron">
   <h1>W3Schools Demo</h1> 
   <p>Resize this responsive page!</p> 
 </div>
 
 <div class="row">
   <div class="col-md-4">
     <h2>London</h2>
     <p>London is the capital city of England.</p>
     <p>It is the most populous city in the United Kingdom,
     with a metropolitan area of over 13 million inhabitants.</p>
   </div>
   <div class="col-md-4">
     <h2>Paris</h2>
     <p>Paris is the capital and most populous city of France.</p>
   </div>
   <div class="col-md-4">
     <h2>Tokyo</h2>
     <p>Tokyo is the capital of Japan, the center of the Greater Tokyo Area,
     and the most populous metropolitan area in the world.</p>
   </div>
 </div>
 
 </div>
 
 </body>
 </html>



	

এইচটিএমএল লেআউট (HTML Layout)

Huge Sell on Popular Electronics

Md. Mursedul Islam Sumon

Web Designer

 

এইচটিএমএল লেআউট (HTML Layouts)

বিভিন্ন ওয়েবসাইটে অনেক সময়ই লক্ষ্য করা যায় যে লিখাগুলো কয়েকটি কলামে বিভক্ত করা থাকে। যেমন, ম্যাগাজিন, নিউজপেপার ইত্যাদি।

HTML এ <div> tag এর ব্যবহার করে layout design বা কলামে বিভক্ত করা যায়।

div element ব্যবহার করে প্রায় layout করা হয়, কারন div ব্যবহার করলে একে সহজেই CSS দিয়ে এর অবস্থান ও সবকিছু design করে নেয়া যায়।

নিচের উদাহরণটিতে চারটি div ব্যবহার করে কয়েকটি কলাম তৈরি করা হল-


<body>

<div id="header">
<h1>City Gallery</h1>
</div>

<div id="nav">
London<br>
Paris<br>
Tokyo<br>
</div>

<div id="section">
<h1>London</h1>
<p>
London is the capital city of England. It is the most populous city in the United Kingdom,
with a metropolitan area of over 13 million inhabitants.
</p>
<p>
Standing on the River Thames, London has been a major settlement for two millennia,
its history going back to its founding by the Romans, who named it Londinium.
</p>
</div>

<div id="footer">
Copyright © W3Schools.com
</div>

</body>



উপরোক্ত html এর CSS part টুকু নিম্নরুপ


<style>
#header {
    background-color:black;
    color:white;
    text-align:center;
    padding:5px;
}
#nav {
    line-height:30px;
    background-color:#eeeeee;
    height:300px;
    width:100px;
    float:left;
    padding:5px; 
}
#section {
    width:350px;
    float:left;
    padding:10px; 
}
#footer {
    background-color:black;
    color:white;
    clear:both;
    text-align:center;
    padding:5px; 
}
 </style>

 

ফলাফলঃ


Table


 

HTML5 ব্যবহার করে ওয়েবসাইট বিন্যাস

HTML5 দিয়ে খুব সুন্দরভাবে ও সহজেই একটা website এর layout তৈরি করা যায়।

HTML5 এর কিছু নতুন Tag ব্যবহার করে সহজেই website এর বিভিন্ন part আলাদা করা যায়।

 

header = এই tag ব্যবহার করে website এর header section কে বুঝানো হয়।
nav = এই tag ব্যবহার করে মেনুর আইটেমগুলোর link করা হয়।
section = এই tag ব্যবহার করে কোন document এর section বুঝানো হয়।
article = এই tag দিয়ে একটি article বুঝানো হয়।
aside = এই tag দিয়ে পেজ এর sidebar বুঝানো হয়।
footer = এই tag দিয়ে পেজ এর সর্বনিম্ন অংশ বা footer part বুঝানো হয়।

নিচের উদাহরনে <header>, <nav>, <section>, এবং <footer> ব্যবহার করে layout তৈরি করা দেখানো হল-


<body>

<header>
<h1>City Gallery</h1>
</header>

<nav>
London<br>
Paris<br>
Tokyo<br>
</nav>

<section>
<h1>London</h1>
<p>
London is the capital city of England. It is the most populous city in the United Kingdom,
with a metropolitan area of over 13 million inhabitants.
</p>
<p>
Standing on the River Thames, London has been a major settlement for two millennia,
its history going back to its founding by the Romans, who named it Londinium.
</p>
</section>

<footer>
Copyright © W3Schools.com
</footer>

</body>


 

 

উপরোক্ত html এর CSS নিম্নে দেয়া হল-


<style>
 header {
     background-color:black;
     color:white;
     text-align:center;
     padding:5px; 
 }
 nav {
     line-height:30px;
     background-color:#eeeeee;
     height:300px;
     width:100px;
     float:left;
     padding:5px; 
 }
 section {
     width:350px;
     float:left;
     padding:10px; 
 }
 footer {
     background-color:black;
     color:white;
     clear:both;
     text-align:center;
     padding:5px; 
 }


টেবিল ব্যবহার করে HTML বিন্যাস

Table tag ব্যবহার করে html layout তৈরি করা যায়।


<body>
 
 <table class="lamp">
 <tr>
   <th>
     <img src="/images/lamp.jpg" alt="Note" style="height:32px;width:32px">
   </th>
   <td>
     The table element was not designed to be a layout tool.
   </td>
 </tr>
 </table>
 
 </body>


 

উপরোক্ত html এর CSS নিম্নে দেয়া হল-


<style>
 table.lamp {
     width:100%;
     border:1px solid #d4d4d4;
 }
 table.lamp th, td {
     padding:10px;
 }
 table.lamp th {
     width:40px;
 }
 </style>

 

বুটস্ট্র্যাপ ফর্মস (Bootstrap Forms)

Huge Sell on Popular Electronics

বুটস্ট্র্যাপ এর ডিফল্ট সেটিংস

বুটস্ট্র্যাপ ফর্মস কন্ট্রোলগুলো স্বয়ংক্রিয়ভাবে কিছু global styling নেয়:

সকল Textual .form-control Class এর <input>, <textarea>, এবং <select> এলিমেন্টগুলোর  বিস্তার ১০০%

 

বুটস্ট্র্যাপ ফরম লেআউট

Bootstrap তিন ধরনের ফর্ম layouts প্রদর্শন করেঃ

  • Vertical form বা উল্লম্ব ফর্ম (এটি ডিফল্ট হিসেবে থাকে)
  • Horizontal form বা আড়াআড়ি ফর্ম
  • Inline form

এই সকল ফর্ম layouts এর জন্য কিছু আদর্শ বিধিমালা আছে

  • সবসময় <form role="form"> ব্যবহার করতে হবে (স্ক্রিন রিডার ব্যবহার করে মানুষের জন্য প্রবেশযোগ্যতা উন্নত করতে সাহায্য করে)
  • ফর্ম গুছাতে এবং নিয়ন্ত্রন করতে <div class="form-group"> ব্যবহার করতে হয় (সর্বোত্তম ফাঁকা স্থান দেয়ার জন্য প্রয়োজন)
  • সকল টেক্সট বেজ এলিমেন্ট <input>, <textarea>, এবং <select> এর জন্য .form-control ক্লাস কোয করা হয়।

 

বুটস্ট্র্যাপ উল্লম্ব ফরম Vertical Form (default)

দুইটা input fields, একটি চেকবক্স এবং একটি submit button এর সাহায্যে নিচের উদাহরন এর মতো একটি উলম্ব ফর্ম গঠন করা যায়:

উদাহরনঃ


<form role="form">
  <div class="form-group">
    <label for="email">Email address:</label>
    <input type="email" class="form-control" id="email">
  </div>
  <div class="form-group">
    <label for="pwd">Password:</label>
    <input type="password" class="form-control" id="pwd">
  </div>
  <div class="checkbox">
    <label><input type="checkbox"> Remember me</label>
  </div>
  <button type="submit" class="btn btn-default">Submit</button>
</form>

 

বুটস্ট্র্যাপ ইনলাইন ফরম

একটি inline form এ সকল উপাদানগুলো একটা সরল রেখায় থাকে , left-aligned, এবং লেবেল পাশাপাশি থাকে

বিশেষ দ্রস্টব্যঃ এটা শুধু মাত্র তখনই প্রদর্শিত হবে যখন viewports এর প্রসস্থতা 768px হবে।

কিছু অতিরিক্ত নিয়ম আছে এটা ব্যবহার করার জন্যঃ

  • .form-inline class টা <form> এর মাঝে স্থাপন করতে হয়

উদাহরনঃ


<form class="form-inline" role="form">
  <div class="form-group">
    <label for="email">Email address:</label>
    <input type="email" class="form-control" id="email">
  </div>
  <div class="form-group">
    <label for="pwd">Password:</label>
    <input type="password" class="form-control" id="pwd">
  </div>
  <div class="checkbox">
    <label><input type="checkbox"> Remember me</label>
  </div>
  <button type="submit" class="btn btn-default">Submit</button>
</form>

ফলাফল : Bootstrap Inline Form

 

সতর্কতাঃ প্রত্যেক input এর জন্য যদি label ব্যবহার না করা হয় তাহলে screen readers ফর্ম গঠনে সমস্যা করতে পারে ।

শধু মাত্র screen reader ছাড়া .sr-only class ব্যবহার করে সকল devices এর জন্য labels hide করে রাখা যাবে।

উদাহরনঃ


<form class="form-inline" role="form">
  <div class="form-group">
    <label class="sr-only" for="email">Email address:</label>
    <input type="email" class="form-control" id="email">
  </div>
  <div class="form-group">
    <label class="sr-only" for="pwd">Password:</label>
    <input type="password" class="form-control" id="pwd">
  </div>
  <div class="checkbox">
    <label><input type="checkbox"> Remember me</label>
  </div>
  <button type="submit" class="btn btn-default">Submit</button>
</form>

ফলাফল : Inline form with sr-only class

 

বুটস্ট্র্যাপ অনুভূমিক ফর্ম

A horizontal form stands apart from the other forms both in the amount of markup, and in the presentation of the form.

উভয় markup এবং presentation ফর্ম এর ক্ষেত্রে আড়াআড়ি ফর্ম গুলো অন্য ফর্মগুলো থেকে দূরত্ব বজায় রাখে

টা ব্যবহার করার কিছু নিয়ম আছে:

  • <form> এলিমেন্ট এর মধ্যে .form-horizontal class স্থাপন করতে হয়
  • সকল <label> এলিমেন্ট এর মাঝে .control-label class ব্যবহার করতে হয়

উদাহরনঃ


<form class="form-horizontal" role="form">
  <div class="form-group">
    <label class="control-label col-sm-2" for="email">Email:</label>
    <div class="col-sm-10">
      <input type="email" class="form-control" id="email" placeholder="Enter email">
    </div>
  </div>
  <div class="form-group">
    <label class="control-label col-sm-2" for="pwd">Password:</label>
    <div class="col-sm-10">
      <input type="password" class="form-control" id="pwd" placeholder="Enter password">
    </div>
  </div>
  <div class="form-group">
    <div class="col-sm-offset-2 col-sm-10">
      <div class="checkbox">
        <label><input type="checkbox"> Remember me</label>
      </div>
    </div>
  </div>
  <div class="form-group">
    <div class="col-sm-offset-2 col-sm-10">
      <button type="submit" class="btn btn-default">Submit</button>
    </div>
  </div>
</form>

ফলাফল : Bootstrap Horizontal Form