{"id":5198,"date":"2016-11-01T01:54:48","date_gmt":"2016-11-01T01:54:48","guid":{"rendered":"http:\/\/www.garysieling.com\/blog\/?p=5198"},"modified":"2016-11-01T01:54:48","modified_gmt":"2016-11-01T01:54:48","slug":"building-responsive-grids-react-bootstrap","status":"publish","type":"post","link":"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/","title":{"rendered":"Building responsive grids with React Bootstrap"},"content":{"rendered":"<p>React Bootstrap is a nice wrapper around Bootstrap, allowing you to build screens with Bootstrap components, hiding a little bit of the need for knowledge of Bootstrap&#8217;s CSS.<\/p>\n<p>To render a table, React Bootstrap provides React classes named &#8220;Grid&#8221;, &#8220;Col&#8221;, and &#8220;Row&#8221;, which can be used interchangeably in a table.<\/p>\n<p>For instance, to render a responsive faceted search display for <a href=\"https:\/\/www.findlectures.com\">FindLectures.com<\/a>, I&#8217;ve written markup like this:<\/p>\n<pre lang=\"xml\">\n<Grid>\n  <Row>\n    <SearchBox \n      initialQuery={self.state.query} \/>\n  <\/Row>          \n  <Row key=\"count\"\n       style={{float: 'right', paddingRight: '50px'}} >\n    <div key=\"description\">\n     {countDescription}\n    <\/div>\n  <\/Row>\n  <Col style={{maxWidth: '225px'}} \n       xs={12} sm={6} md={2} lg={2}>\n    {facets}\n  <\/Col>\n  <Col xs={12} sm={6} md={10} lg={10}>\n    {searchResults}\n    <Pagination \/>\n  <\/Col>\n<\/Grid>\n<\/pre>\n<p>The important part of this are the parameters: xs, sm, md, and lg. The Bootstrap grid system is a 12 column grid, and these tell Bootstrap how many column units each component should consume, depending on the screen size. The smallest size, xs, is for phones, all the way up to large displays. You can also tell Bootstrap to swap an object to the right\/left by a certain number of columns, using props like lgPush\/lgPull, move to the right with lgOffset, and hide columns at a certain display size with lgHidden.<\/p>\n<p>To test this, you can simply resize your browser, to see the different rendering sizes.<\/p>\n<p>By default, each column is a percentage of the total screen size &#8211; for certain scenarios this can become unrealistic. For instance, I found that for facets I don&#8217;t want the facet panel to become wider than the widest facet, which is why I manually set max-width in the above example.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>How to make a responsive grid in React Bootstrap<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"footnotes":""},"categories":[12],"tags":[92,129,302,455],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.9 - aioseo.com -->\n\t<meta name=\"description\" content=\"How to make a responsive grid in React Bootstrap\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"gary\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.9\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Gary Sieling - Software Engineer\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Building responsive grids with React Bootstrap - Gary Sieling\" \/>\n\t\t<meta property=\"og:description\" content=\"How to make a responsive grid in React Bootstrap\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2016-11-01T01:54:48+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2016-11-01T01:54:48+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Building responsive grids with React Bootstrap - Gary Sieling\" \/>\n\t\t<meta name=\"twitter:description\" content=\"How to make a responsive grid in React Bootstrap\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/building-responsive-grids-react-bootstrap\\\/#blogposting\",\"name\":\"Building responsive grids with React Bootstrap - Gary Sieling\",\"headline\":\"Building responsive grids with React Bootstrap\",\"author\":{\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/author\\\/gary\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/#organization\"},\"datePublished\":\"2016-11-01T01:54:48+00:00\",\"dateModified\":\"2016-11-01T01:54:48+00:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/building-responsive-grids-react-bootstrap\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/building-responsive-grids-react-bootstrap\\\/#webpage\"},\"articleSection\":\"How-To, bootstrap, css, javascript, react\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/building-responsive-grids-react-bootstrap\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.garysieling.com\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/category\\\/how-to\\\/#listItem\",\"name\":\"How-To\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/category\\\/how-to\\\/#listItem\",\"position\":2,\"name\":\"How-To\",\"item\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/category\\\/how-to\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/building-responsive-grids-react-bootstrap\\\/#listItem\",\"name\":\"Building responsive grids with React Bootstrap\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/building-responsive-grids-react-bootstrap\\\/#listItem\",\"position\":3,\"name\":\"Building responsive grids with React Bootstrap\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/category\\\/how-to\\\/#listItem\",\"name\":\"How-To\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/#organization\",\"name\":\"Gary Sieling\",\"description\":\"Software Engineer\",\"url\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/author\\\/gary\\\/#author\",\"url\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/author\\\/gary\\\/\",\"name\":\"gary\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/building-responsive-grids-react-bootstrap\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/0be925276d848ffe98a6a9dc8cf33e67?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"gary\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/building-responsive-grids-react-bootstrap\\\/#webpage\",\"url\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/building-responsive-grids-react-bootstrap\\\/\",\"name\":\"Building responsive grids with React Bootstrap - Gary Sieling\",\"description\":\"How to make a responsive grid in React Bootstrap\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/building-responsive-grids-react-bootstrap\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/author\\\/gary\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/author\\\/gary\\\/#author\"},\"datePublished\":\"2016-11-01T01:54:48+00:00\",\"dateModified\":\"2016-11-01T01:54:48+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/\",\"name\":\"Gary Sieling\",\"description\":\"Software Engineer\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.garysieling.com\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Building responsive grids with React Bootstrap - Gary Sieling","description":"How to make a responsive grid in React Bootstrap","canonical_url":"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/#blogposting","name":"Building responsive grids with React Bootstrap - Gary Sieling","headline":"Building responsive grids with React Bootstrap","author":{"@id":"https:\/\/www.garysieling.com\/blog\/author\/gary\/#author"},"publisher":{"@id":"https:\/\/www.garysieling.com\/blog\/#organization"},"datePublished":"2016-11-01T01:54:48+00:00","dateModified":"2016-11-01T01:54:48+00:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/#webpage"},"isPartOf":{"@id":"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/#webpage"},"articleSection":"How-To, bootstrap, css, javascript, react"},{"@type":"BreadcrumbList","@id":"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/www.garysieling.com\/blog#listItem","position":1,"name":"Home","item":"https:\/\/www.garysieling.com\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/www.garysieling.com\/blog\/category\/how-to\/#listItem","name":"How-To"}},{"@type":"ListItem","@id":"https:\/\/www.garysieling.com\/blog\/category\/how-to\/#listItem","position":2,"name":"How-To","item":"https:\/\/www.garysieling.com\/blog\/category\/how-to\/","nextItem":{"@type":"ListItem","@id":"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/#listItem","name":"Building responsive grids with React Bootstrap"},"previousItem":{"@type":"ListItem","@id":"https:\/\/www.garysieling.com\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/#listItem","position":3,"name":"Building responsive grids with React Bootstrap","previousItem":{"@type":"ListItem","@id":"https:\/\/www.garysieling.com\/blog\/category\/how-to\/#listItem","name":"How-To"}}]},{"@type":"Organization","@id":"https:\/\/www.garysieling.com\/blog\/#organization","name":"Gary Sieling","description":"Software Engineer","url":"https:\/\/www.garysieling.com\/blog\/"},{"@type":"Person","@id":"https:\/\/www.garysieling.com\/blog\/author\/gary\/#author","url":"https:\/\/www.garysieling.com\/blog\/author\/gary\/","name":"gary","image":{"@type":"ImageObject","@id":"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/0be925276d848ffe98a6a9dc8cf33e67?s=96&d=identicon&r=g","width":96,"height":96,"caption":"gary"}},{"@type":"WebPage","@id":"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/#webpage","url":"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/","name":"Building responsive grids with React Bootstrap - Gary Sieling","description":"How to make a responsive grid in React Bootstrap","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/www.garysieling.com\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/#breadcrumblist"},"author":{"@id":"https:\/\/www.garysieling.com\/blog\/author\/gary\/#author"},"creator":{"@id":"https:\/\/www.garysieling.com\/blog\/author\/gary\/#author"},"datePublished":"2016-11-01T01:54:48+00:00","dateModified":"2016-11-01T01:54:48+00:00"},{"@type":"WebSite","@id":"https:\/\/www.garysieling.com\/blog\/#website","url":"https:\/\/www.garysieling.com\/blog\/","name":"Gary Sieling","description":"Software Engineer","inLanguage":"en-US","publisher":{"@id":"https:\/\/www.garysieling.com\/blog\/#organization"}}]},"og:locale":"en_US","og:site_name":"Gary Sieling - Software Engineer","og:type":"article","og:title":"Building responsive grids with React Bootstrap - Gary Sieling","og:description":"How to make a responsive grid in React Bootstrap","og:url":"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/","article:published_time":"2016-11-01T01:54:48+00:00","article:modified_time":"2016-11-01T01:54:48+00:00","twitter:card":"summary_large_image","twitter:title":"Building responsive grids with React Bootstrap - Gary Sieling","twitter:description":"How to make a responsive grid in React Bootstrap"},"aioseo_meta_data":{"post_id":"5198","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"created":"2023-02-04 17:07:39","updated":"2026-07-06 02:17:35","ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.garysieling.com\/blog\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.garysieling.com\/blog\/category\/how-to\/\" title=\"How-To\">How-To<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tBuilding responsive grids with React Bootstrap\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.garysieling.com\/blog"},{"label":"How-To","link":"https:\/\/www.garysieling.com\/blog\/category\/how-to\/"},{"label":"Building responsive grids with React Bootstrap","link":"https:\/\/www.garysieling.com\/blog\/building-responsive-grids-react-bootstrap\/"}],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/posts\/5198"}],"collection":[{"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/comments?post=5198"}],"version-history":[{"count":0,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/posts\/5198\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/media?parent=5198"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/categories?post=5198"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.garysieling.com\/blog\/wp-json\/wp\/v2\/tags?post=5198"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}