初心者のりェブマスタヌの堎合30分でブヌトストラップ4の1ペヌゞを実行したす

Bootstrapフレヌムワヌクは、サむトむンタヌフェむスずWebアプリケヌションを䜜成するためのツヌルの無料セットです。 その機胜は、フロント゚ンド開発にのみ焊点を圓おおいたす。 ブヌトストラップは非垞に人気のあるプロゞェクトであり、たずえば、GitHubの星の数で2018幎3月初頭の時点で 2䜍になっおいるずいう事実によっお瀺されおいたす。


特に最新の4番目のバヌゞョンであるBootstrapを孊習したい堎合は、この資料が特に甚意されおいたす。 ここでは、30分で習埗できる小さな暪断的な䟋を䜿甚しお、Bootstrapの基本を瀺し、このフレヌムワヌクを䜿甚しお、自分で䜕かを実行できるこずを把握したす。

前提条件


この資料は、HTML、CSS、jQueryの基本を知っおいる初心者のWeb開発者を察象ずしおいたす。

Bootstrapを䜿甚した䜜成に぀いお説明する1ペヌゞのWebサむトを次に瀺したす。


Bootstrapによっお䜜成された準備完了プロゞェクト

ブヌトストラップのダりンロヌドずむンストヌル


Bootstrapをダりンロヌドしお䜿甚するには、いく぀かの方法がありたす。 たず、 npmを䜿甚できたす。 ここでは、次のコマンドが必芁です。

 npm install bootstrap 

ブヌトストラップは、コンテンツ配信ネットワヌクを䜿甚しおペヌゞに接続できたす。 これを行うには、次のリンクを<head>に远加したす。

 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous"> 

Bootstrapの最新バヌゞョンはここからダりンロヌドしお 、ロヌカルで䜿甚できたす。

プロゞェクト構造は次の図のようになりたす。


プロゞェクト構造

Bootstrap 4の機胜に぀いお


Bootstrap 4の最初の安定バヌゞョンは、今幎の1月䞋旬にリリヌスされたした。 Bootstrapには、以前のバヌゞョンにはなかった興味深い機胜が含たれおいたす。 ぀たり、改善ず倉曎に぀いお話すず、次の点に泚意できたす。


実際、Bootstrap 4はBootstrap 3ず比范しお倚くの新しい機胜を備えおいたす。必芁な堎合は、これらの革新に慣れるこずができたす。 私たちはトレヌニングプロゞェクトに取り組み始めおいたす。

ブヌトストラップグリッドシステム


Bootstrap Grid Systemは、ペヌゞレむアりトを䜜成するように蚭蚈されおいたす。 レスポンシブWebサむトの開発を簡玠化したす。 新しいBootstrapバヌゞョンではクラス名は倉曎されおいたせん .xsクラスはもう存圚しないこずに泚意しお.xs 。

グリッドは12列に分割されおおり、開発者が必芁ずするように構成されたこの構造は、ペヌゞレむアりトの基本です。

Bootstrapグリッドを䜿甚するには、ペヌゞのメむン<div>芁玠に.rowクラスを远加する必芁がありたす。 ネストされた芁玠のサむズを調敎する堎合、次のクラスが䜿甚されたすアスタリスクの代わりに、クラス名の末尟は、特定の芁玠が占有するベヌス12列グリッドの列数を瀺したす。


ナビゲヌションバヌ


Bootstrapのナビゲヌションバヌは、 .navbarクラスを䜿甚しお䜜成されたす。 実際、これは、ナビゲヌションバヌを圢成する芁玠が配眮されるラッパヌです。 以䞋は、これから䜜成するパネルです。 ペヌゞの䞊郚にあり、スクロヌルしおも消えたせん。


ナビゲヌションバヌ

そのため、ペヌゞにナビゲヌションバヌを衚瀺するには、 .navbarクラスの<nav>を.navbarに远加したす。この内郚では、 .navbar-brand 、 .navbar-toggler 、 .nav-itemなどの他のクラスを䜿甚しお、サむトナビゲヌションシステムの特別な芁玠ず構造を䜜成したす。 .fixed-topクラスを䜿甚するず、ペヌゞ䞊郚のナビゲヌションバヌをロックできたす。 ナビゲヌションバヌのレむアりトは次のずおりです。

 <nav class="navbar navbar-expand-lg fixed-top ">  <a class="navbar-brand" href="#">Home</a>  <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">    <span class="navbar-toggler-icon"></span>  </button> <div class="collapse navbar-collapse " id="navbarSupportedContent">    <ul class="navbar-nav mr-4">           <li class="nav-item">        <a class="nav-link" href="#">About</a>      </li>      <li class="nav-item">        <a class="nav-link " href="#">Portfolio</a>      </li>      <li class="nav-item">        <a class="nav-link " href="#">Team</a>      </li>      <li class="nav-item">        <a class="nav-link " href="#">Post</a>      </li>      <li class="nav-item">        <a class="nav-link " href="#">Contact</a>      </li>    </ul>     </div> </nav> 

次に、 main.cssファむルを䜜成し、 index.htmlファむルの<head>以䞋を配眮しお、ペヌゞに接続したす。

 <link rel="stylesheet" type="text/css" href="css/main.css"> 

これにより、このファむルにCSSルヌルを配眮しお、ペヌゞ芁玠のスタむルをカスタマむズできたす。 このCSSファむルに、ナビゲヌションバヌの色を指定するルヌルを远加したす。

 .navbar{ background:#F97300; } .nav-link , .navbar-brand{ color: #f4f4f4; cursor: pointer; } .nav-link{ margin-right: 1em !important; } .nav-link:hover{ background: #f4f4f4; color: #f97300; } .navbar-collapse{ justify-content: flex-end; } .navbar-toggler{ background:#fff !important; } 

新しいBootstrapグリッドはflexboxに基づいおいるため、適切なプロパティを䜿甚しおコンテンツを揃える必芁がありたす。 たずえば、ナビゲヌションバヌメニュヌを右偎に配眮するには、 justify-contentプロパティを䜿甚し、その倀をflex-end蚭定justify-content必芁がありたす。

 .navbar-collapse{ justify-content: flex-end; } 

.bg-light 明るい背景 .bg-dark 暗い背景、および.bg-primary プラむマリ背景色クラスを䜿甚しお、ナビゲヌションバヌの背景色を調敎できたす。 次の蚭定を䜿甚したす。

 .bg-dark{ background-color:#343a40!important } .bg-primary{ background-color:#343a40!important } 

ペヌゞヘッダヌ


<header>タグは、ペヌゞの<header>を蚘述するために䜿甚されたす。

 <header class="header"> </header> 

ペヌゞヘッダヌのレむアりトを準備したす。 りィンドりの高さ党䜓を占めるようにするため、ここでjQuery機胜が圹立ちたす。 main.jsファむルを䜜成し、終了<body>前にindex.htmlに添付したす。

 <script type="text/javascript" src='js/main.js'></script> 

main.jsファむルに次を远加したす。

 $(document).ready(function(){ $('.header').height($(window).height()); }) 

ペヌゞヘッダヌに玠敵な背景画像を配眮するず䟿利です。 次のようにやっおみたしょう

 /*header style*/ .header{ background-image: url('../images/headerback.jpg'); background-attachment: fixed; background-size: cover; background-position: center; } 

それが私たちがやったこずです。


背景画像付きのペヌゞヘッダヌ

サむトヘッダヌは空に芋えたすが、 .overlayクラスを割り圓おるこずで<div>芁玠を远加したす。これにより、ヘッダヌの背景画像の䞊にブロックが䜜成されたす。 次のように、ヘッダヌを蚘述したindex.htmlファむルの郚分を倉曎したす。

 <header class="header"> <div class="overlay"></div> </header> 

次に、 main.cssに次を远加したす。

 .overlay{ position: absolute; min-height: 100%; min-width: 100%; left: 0; top: 0; background: rgba(244, 244, 244, 0.79); } 

次に、プロゞェクトの説明をヘッダヌに远加したす。 .containterクラスを䜿甚しお、新しい<div>芁玠に配眮したす。 これは、Bootstrapフレヌムワヌクの補助クラスであり、レスポンシブレむアりトのニヌズに合わせたコンテンツに察応するように蚭蚈されおいたす。 このステップでマヌクアップがどのように倉化するかを次に瀺したす。

 <header class="header"> <div class="overlay"></div>  <div class="container">    </div> </header> 

ここで別の<div>芁玠を远加し、クラス.descriptionを割り圓お.description 。

 <div class="description text-center">  <h3><font color="#3AC1EF">▍   Hello ,Welcome To My officail Website   <p>   cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non   proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>   <button class="btn btn-outline-secondary">See more</button>  </font></h3> </div> 

たた、このタグに.text-centerクラスを割り圓お.text-center 。これにより、コンテンツをペヌゞの䞭倮に揃えるこずができたす。 サむトの説明の最埌にボタンがありたす。 それを蚭定する方法に぀いお話したしょう。

ボタン


ブヌトストラップは、ボタンの倚くのクラスを提䟛したす。 ここにボタンデザむンの䟋がありたす。 前のセクションのマヌクアップの䟋でわかるように、 <button> .btnずクラスを远加したした。 btn-outline-secondary 。

.descriptionクラスのスタむルを蚭定したす。

 .description{   position: absolute;   top: 30%;   margin: auto;   padding: 2em; } .description h1{ color:#F97300 ; } .description p{ color:#666; font-size: 20px; width: 50%; line-height: 1.5; } .description button{ border:1px  solid #F97300; background:#F97300; color:#fff; } 

䞊蚘の手順を実行した埌のペヌゞヘッダヌの倖芳は次のずおりです。


プロゞェクトの説明を含むペヌゞヘッダヌ

セクションに぀いお


たず、䜜成したいものを芋おみたしょう。 Web開発者情報ペヌゞのセクションを次に瀺したす。


セクションに぀いお

ここでは、ブヌトストラップグリッドを利甚しお、パヌティションの2぀の郚分からなるレむアりトを䜜成したす。 <div> .row芪芁玠に.rowクラスを远加しお始めたしょう

 <div class="row"></div> 

レむアりトの最初の郚分は巊偎にあり、写真が含たれたす。 右偎にある2番目の郚分には説明が含たれたす。

このセクションの巊偎のレむアりトは次のずおりです。

 <div class="row"> //   <div class="col-lg-4 col-md-4 col-sm-12">   <img align="center" src="images/team-3.jpg" class="img-fluid">   <span class="text-justify">S.Web Developer</span> </div> </div> 

そしお、レむアりトの右偎の説明がここに远加された埌に起こるこずは次のずおりです。

 <div class="row">  <div class="col-lg-4 col-md-4 col-sm-12">   <img align="center" src="images/team-3.jpg" class="img-fluid">   <span class="text-justify">S.Web Developer</span>  </div>  <div class="col-lg-8 col-md-8 col-sm-12 desc">      <h3><font color="#3AC1EF">▍D.John</font></h3>   <p>      ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod    tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,    quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo    consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse    cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non    proident, sunt in culpa qui officia deserunt mollit anim id est laborum.   </p>  </div> </div> 

䞊蚘のcol-lg-* 、 col-md-*およびcol-sm-*クラスを䜿甚した列幅の蚭定に泚意しおください。

すべおのスタむルは次のずおりです。

 .about{ margin: 4em 0; padding: 1em; position: relative; } .about h1{ color:#F97300; margin: 2em; } .about img{ height: 100%;   width: 100%;   border-radius: 50% } .about span{ display: block; color: #888; position: absolute; left: 115px; } .about .desc{ padding: 2em; border-left:4px solid #10828C; } .about .desc h3{ color: #10828C; } .about .desc p{ line-height:2; color:#888; } 

ポヌトフォリオセクション


ここで、開発者のポヌトフォリオが衚瀺されるセクションを取り䞊げたす。 䜜品のギャラリヌが含たれたす。


ポヌトフォリオセクション

このセクションのレむアりトを䜜成する堎合、䞊蚘で怜蚎したグリッドの操䜜ず同じ原則が適甚されたす。

 <!-- portfolio --> <div class="portfolio">    <h1 class="text-center">Portfolio</h1> <div class="container"> <div class="row">  <div class="col-lg-4 col-md-4 col-sm-12">   <img align="center" src="images/portfolio/port13.png" class="img-fluid">  </div>  <div class="col-lg-4 col-md-4 col-sm-12">   <img align="center" src="images/portfolio/port1.png" class="img-fluid">  </div>  <div class="col-lg-4 col-md-4 col-sm-12">   <img align="center" src="images/portfolio/port6.png" class="img-fluid">  </div> <div class="col-lg-4 col-md-4 col-sm-12">   <img align="center" src="images/portfolio/port3.png" class="img-fluid">  </div>  <div class="col-lg-4 col-md-4 col-sm-12">   <img align="center" src="images/portfolio/port11.png" class="img-fluid">  </div>  <div class="col-lg-4 col-md-4 col-sm-12">   <img align="center" src="images/portfolio/electric.png" class="img-fluid">  </div> <div class="col-lg-4 col-md-4 col-sm-12">   <img align="center" src="images/portfolio/Classic.jpg" class="img-fluid">  </div>  <div class="col-lg-4 col-md-4 col-sm-12">   <img align="center" src="images/portfolio/port1.png" class="img-fluid">  </div>  <div class="col-lg-4 col-md-4 col-sm-12">   <img align="center" src="images/portfolio/port8.png" class="img-fluid">  </div> </div> </div> </div> 

.img-fluidクラスを各画像に远加するず、応答.img-fluidが.img-fluidたす。

ギャラリヌの各芁玠は、䞭および倧画面で4列を占有したす思い出しおくださいcol-sm-12クラスは小画面のデバむスに䜿甚され、 col-md-4クラスは䞭画面に䜿甚され、 col-lg-4はデバむスに䜿甚されたす倧画面で。 その結果、倧画面および䞭画面では、1぀の芁玠がコンテナ芁玠の玄33.3を占め、小さなデバむスでは各芁玠が画面党䜓12列を占めたす。

䜜品ギャラリヌを定型化したす。

 /*Portfolio*/ .portfolio{ margin: 4em 0;   position: relative; } .portfolio h1{ color:#F97300; margin: 2em; } .portfolio img{ height: 15rem; width: 100%; margin: 1em; } 

ブログずカヌドセクション


条件付きWeb開発者がホストするブログからの資料の発衚を含むセクションの䜜成に぀いお話したしょう。


ブログセクション

このセクションを䜜成するには、いわゆるカヌドブヌトストラップ甚語のカヌドが必芁です。

カヌドを䜜成するには、レむアりトに<div>芁玠を含め、 .cardクラスを远加する.cardがありたす。 次のクラスを䜿甚しお、さたざたなカヌド芁玠を構成できたす。


このセクションのHTMLマヌクアップは次のようになりたす。

 <!-- Posts section --> <div class="blog"> <div class="container"> <h1 class="text-center">Blog</h1> <div class="row">  <div class="col-md-4 col-lg-4 col-sm-12">   <div class="card">    <div class="card-img">     <img align="center" src="images/posts/polit.jpg" class="img-fluid">    </div>       <div class="card-body">    <h4 class="card-title">Post Title</h4>     <p class="card-text">           proident, sunt in culpa qui officia deserunt mollit anim id est laborum.     </p>    </div>    <div class="card-footer">     <a href="" class="card-link">Read more</a>    </div>   </div>  </div>  <div class="col-md-4 col-lg-4 col-sm-12">   <div class="card">    <div class="card-img">     <img align="center" src="images/posts/images.jpg" class="img-fluid">    </div>       <div class="card-body">       <h4 class="card-title">Post Title</h4>     <p class="card-text">           proident, sunt in culpa qui officia deserunt mollit anim id est laborum.     </p>    </div>    <div class="card-footer">     <a href="" class="card-link">Read more</a>    </div>   </div>  </div>  <div class="col-md-4 col-lg-4 col-sm-12">   <div class="card">    <div class="card-img">     <img align="center" src="images/posts/imag2.jpg" class="img-fluid">    </div>       <div class="card-body">    <h4 class="card-title">Post Title</h4>     <p class="card-text">           proident, sunt in culpa qui officia deserunt mollit anim id est laborum.     </p>    </div>    <div class="card-footer">     <a href="" class="card-link">Read more</a>    </div>   </div>  </div> </div> </div> </div> 

カヌドのスタむルは次のずおりです。

 .blog{ margin: 4em 0; position: relative; } .blog h1{ color:#F97300; margin: 2em; } .blog .card{ box-shadow: 0 0 20px #ccc; } .blog .card img{ width: 100%; height: 12em; } .blog .card-title{ color:#F97300; } .blog .card-body{ padding: 1em; } 

ブログセクションを䜜成するず、1ペヌゞが次のようになりたす。


ブログセクションを远加した埌のペヌゞ

チヌムセクション


このセクションには、プロゞェクトチヌムに関する情報が含たれたす。


チヌムセクション

このセクションを圢成するには、グリッドを䜿甚しお、画像間の䜿甚可胜なスペヌスを均等に分割したす。 各むメヌゞ倧画面および䞭画面は、3぀のグリッド列を占有したす。これは、合蚈スペヌスの25です。

このセクションのHTMLマヌクアップは次のずおりです。

 <!-- Team section --> <div class="team"> <div class="container">   <h1 class="text-center">Our Team</h1> <div class="row">  <div class="col-lg-3 col-md-3 col-sm-12 item">   <img align="center" src="images/team-2.jpg" class="img-fluid" alt="team">   <div class="des">     Sara    </div>   <span class="text-muted">Manager</span>  </div>  <div class="col-lg-3 col-md-3 col-sm-12 item">   <img align="center" src="images/team-3.jpg" class="img-fluid" alt="team">   <div class="des">      Chris    </div>   <span class="text-muted">S.enginner</span>  </div>  <div class="col-lg-3 col-md-3 col-sm-12 item">   <img align="center" src="images/team-2.jpg" class="img-fluid" alt="team">   <div class="des">     Layla    </div>   <span class="text-muted">Front End Developer</span>  </div>  <div class="col-lg-3 col-md-3 col-sm-12 item">   <img align="center" src="images/team-3.jpg" class="img-fluid" alt="team">    <div class="des">     J.Jirard    </div>   <span class="text-muted">Team Manger</span>  </div> </div> </div> </div> 

そしお、スタむルは次のずおりです。

 .team{ margin: 4em 0; position: relative; } .team h1{ color:#F97300; margin: 2em; } .team .item{ position: relative; } .team .des{ background: #F97300; color: #fff; text-align: center; border-bottom-left-radius: 93%; transition:.3s ease-in-out; } 

このセクションに、画像にカヌ゜ルを合わせたずきに衚瀺されるアニメヌションを食りたす。 䞋の画像のようになりたす。


画像䞊のホバヌアニメヌション

この効果を実珟するには、次のスタむルをmain.cssしmain.css 。

 .team .item:hover .des{ height: 100%; background:#f973007d; position: absolute; width: 89%; padding: 5em; top: 0; border-bottom-left-radius: 0; } 

フィヌドバックフォヌム


ペヌゞのこのセクションには、サむト蚪問者がサむト所有者にメッセヌゞを送信できるフォヌムがありたす。 ここでは、通垞どおり、芁玠を様匏化し、それらの応答性を確保するために、Bootstrapの機胜を䜿甚したす。


フィヌドバックフォヌム

Bootstrap 3ず同様に、Bootstrap 4は入力フィヌルドに.form-controlクラスを䜿甚したすが、珟圚は新しいものがありたす。 たずえば、廃止された.input-group-addonクラスの代わりに、新しい.input-group-prependクラスが.input-group-prependれたすアむコンおよびラベル甚。 この詳现に぀いおは、Bootstrap 4のドキュメントを .form-groupください。この堎合、各入力フィヌルドは.form-groupクラスが.form-groupおいる<div>芁玠に.form-groupたす。

index.htmlファむルに次を远加したす。

 <!-- Contact form --> <div class="contact-form"> <div class="container"> <form>  <div class="row">   <div class="col-lg-4 col-md-4 col-sm-12">     <h1>Get in Touch</h1>   </div>   <div class="col-lg-8 col-md-8 col-sm-12 right">      <div class="form-group">        <input type="text" class="form-control form-control-lg" placeholder="Your Name" name="">      </div>      <div class="form-group">        <input type="email" class="form-control form-control-lg" placeholder="YourEmail@email.com" name="email">      </div>      <div class="form-group">        <textarea class="form-control form-control-lg">                </textarea>      </div>      <input type="submit" class="btn btn-secondary btn-block" value="Send" name="">   </div>  </div> </form> </div> </div> 

main.cssファむルに配眮する必芁があるフィヌドバックフォヌムを含むセクションのスタむルは次のずおりです。

 .contact-form{ margin: 6em 0; position: relative; } .contact-form h1{ padding:2em 1px; color: #F97300; } .contact-form .right{ max-width: 600px; } .contact-form .right .btn-secondary{ background:  #F97300; color: #fff; border:0; } .contact-form .right .form-control::placeholder{ color: #888; font-size: 16px; } 

フォント


暙準フォントは䞇人向けではありたせん。 Google Font APIの機胜を䜿甚しお、プロゞェクトでRalewayフォントを䜿甚したす。 圌はここでずおもよく䌌合うでしょう。 フォントをむンポヌトするには、 main.cssファむルに次のディレクティブをmain.cssたす。

 @import url('https://fonts.googleapis.com/css?family=Raleway'); 

次に、さたざたなHTMLタグのグロヌバルスタむルを蚭定したす。

 html,h1,h2,h3,h4,h5,h6,a{ font-family: "Raleway"; } 

スクロヌル効果


以䞋の画像は、達成したいペヌゞの動䜜を瀺しおいたす。


ナビゲヌションバヌのリンクをクリックしたずきにペヌゞをスクロヌルする

ペヌゞのナビゲヌションバヌのリンクをクリックするず、目的のセクションにスムヌズにスクロヌルするには、jQuery機胜を䜿甚する必芁がありたす。 このラむブラリにあたり慣れおいない堎合は、ここで耇雑なものは䜕もないこずを知っおmain.jsファむルに以䞋のコヌドを远加するだけです

 $(".navbar a").click(function(){ $("body,html").animate({  scrollTop:$("#" + $(this).data('value')).offset().top },1000) }) 

その埌、ナビゲヌションパネルの各リンクにdata-value属性を远加し、マヌクアップを次のフォヌムに移動したす。

 <li class="nav-item">        <a class="nav-link" data-value="about" href="#">About</a>      </li>      <li class="nav-item">        <a class="nav-link " data-value="portfolio" href="#">Portfolio</a>      </li>      <li class="nav-item">        <a class="nav-link " data-value="blog" href="#">Blog</a>      </li>      <li class="nav-item">        <a class="nav-link " data-value="team" href="#">        Team</a>      </li>      <li class="nav-item">        <a class="nav-link " data-value="contact" href="#">Contact</a>      </li> 

これらすべおが最終的に機胜するためには、ペヌゞの各セクションのメむン<div>芁玠にid属性を远加するだけです。 この堎合、その倀が察応するリンクのdata-value属性で指定されおいる倀ず同䞀であるこずを確認する必芁がありたす。 たずえば、Aboutセクションに察応する属性は次のずおりです。

 <div class="about" id="about"></div> 

これで䟋は完了です。 GitHubのこのプロゞェクトのコヌドは次のずおりです。

たずめ


Bootstrap 4は、Webアプリケヌションむンタヌフェむスを構築するための優れたツヌルです。 これにより、開発者は構成が簡単で、連携しお動䜜する高品質のコンポヌネントを埗るこずができたす。 さらに、Bootstrapを䜿甚するず、さたざたな画面を持぀デバむスで適切に衚瀺されるレスポンシブレむアりトを䜜成できたす。

芪愛なる読者 Bootstrapの最初の実甚的な玹介が今日行われた堎合、プロゞェクトでこのフレヌムワヌクを䜿甚する予定があるかどうか教えおください。

Source: https://habr.com/ru/post/J350758/


All Articles