cssAudio - Activefile-genericCSS - ActiveGeneric - ActiveHTML - ActiveImage - ActiveJS - ActiveSVG - ActiveText - Activefile-genericVideo - ActiveLovehtmlicon-new-collectionicon-personicon-teamlog-outoctocatpop-outspinnerstartv

Pen Settings

CSS Base

Vendor Prefixing

Add External Stylesheets/Pens

Any URL's added here will be added as <link>s in order, and before the CSS in the editor. If you link to another Pen, it will include the CSS from that Pen. If the preprocessor matches, it will attempt to combine them before processing.

+ add another resource

You're using npm packages, so we've auto-selected Babel for you here, which we require to process imports and make it all work. If you need to use a different JavaScript preprocessor, remove the packages in the npm tab.

Add External Scripts/Pens

Any URL's added here will be added as <script>s in order, and run before the JavaScript in the editor. You can use the URL of any other Pen and it will include the JavaScript from that Pen.

+ add another resource

Use npm Packages

We can make npm packages available for you to use in your JavaScript. We use webpack to prepare them and make them available to import. We'll also process your JavaScript with Babel.

⚠️ This feature can only be used by logged in users.

Code Indentation

     

Save Automatically?

If active, Pens will autosave every 30 seconds after being saved once.

Auto-Updating Preview

If enabled, the preview panel updates automatically as you code. If disabled, use the "Run" button to update.

            
              .grid__wrapper
  .article__title
    h1.article__title--top London
    h1.red Fashion
    h1.article__title--bottom Week
  .article__subtitle
    h2.red Luxury shopping destination.
    h3
      p Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptates quod dolores accusamus nulla doloremque minus minima? Doloribus quod, ea consequuntur?
  .article__text.text-1
    p Lorem ipsum dolor sit amet, consectetur adipisicing elit. Explicabo odio eligendi voluptatum tempore fugit dolore nulla adipisci enim, veritatis laborum officia dignissimos sapiente iste consequatur sit animi doloribus porro autem officiis voluptate error laudantium delectus, ipsam placeat quaerat. Aut, ex veritatis laborum officia dignissimos sapiente iste consequatur sit animi doloribus porro autem officiis voluptate error laudantium delectus, ipsam placeat quaerat.
    
    p Lorem ipsum dolor sit amet, consectetur adipisicing elit. Explicabo odio eligendi voluptatum tempore fugit dolore nulla adipisci enim, veritatis laborum officia dignissimos sapiente iste consequatur sit animi doloribus porro autem officiis voluptate.
    
    p Lorem ipsum dolor sit amet, consectetur adipisicing elit. Explicabo odio eligendi voluptatum tempore fugit dolore nulla adipisci enim, veritatis laborum officia dignissimos sapiente iste consequatur sit animi doloribus porro autem officiis voluptate error laudantium delectus, ipsam placeat quaerat. Lorem ipsum dolor sit amet, consectetur adipisicing elit. Explicabo odio eligendi voluptatum tempore fugit dolore nulla adipisci enim, veritatis laborum officia dignissimos sapiente iste consequatur sit animi doloribus porro autem officiis voluptate error laudantium delectus, ipsam placeat quaerat.
    
    p Lorem ipsum dolor sit amet, consectetur adipisicing elit. Explicabo odio eligendi voluptatum tempore fugit dolore nulla adipisci enim, veritatis laborum officia dignissimos sapiente iste consequatur sit animi doloribus porro autem officiis voluptate error laudantium delectus, ipsam placeat quaerat.
    
  .article__image
    img(src="https://images.unsplash.com/photo-1457972851104-4fd469440bf9")
    p.caption Lorem ipsum dolor sit amet, consectetur adipisicing elit obcaecati

  .article__text.text-2
    p Lorem ipsum dolor sit amet, consectetur adipisicing elit. Rem, dolorum? Repellat consequatur error consequuntur. Omnis nam magnam odio natus, ipsa quia ad. Corrupti nostrum rerum facere minima perspiciatis atque impedit, cum esse! Ipsam alias, ratione aliquam totam quidem reprehenderit debitis modi illum suscipit tempore aperiam eos blanditiis quam distinctio, possimus itaque, libero ipsa? Reprehenderit qui architecto porro? Adipisci suscipit ab impedit est repudiandae, deserunt iusto, iste dolorum, reiciendis magnam provident sint, nesciunt perferendis minus consectetur. Quaerat quidem autem corporis cupiditate, alias ipsum quasi tenetur, suscipit enim adipisci molestiae commodi placeat reprehenderit dolore maiores quos dolorum, hic! Magnam reprehenderit, enim repellat.

    p Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ea cumque nesciunt veritatis aut alias molestiae ullam, deserunt hic, cum atque fuga voluptatum et ex repellat magni. Minima blanditiis tempora quo atque necessitatibus esse minus, aut quam nisi eveniet, autem eum!
    
    p Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nam cum repudiandae accusamus quos quam consequatur tempora distinctio facere sequi aut enim, provident accusantium, incidunt corrupti velit expedita alias quasi obcaecati praesentium explicabo nesciunt qui non fugiat molestias. Sint fuga quidem magni porro! Recusandae esse, suscipit quo aliquid aliquam officiis minus, ea ratione quod non, repellendus et nihil ullam quibusdam labore!
            
          
!
            
              // general styles

body
  margin: 0
  font-family: 'Heebo', sans-serif
  // background: #f9f9f9

// defines the grid

.grid__wrapper
  display: grid
  grid-template-columns: repeat(3, 1fr) // 3 equal columns
  grid-template-rows: auto // auto sized rows
  grid-template-areas: "t t t" ". st st" ". t1 t1" "i i i" "t2 t2 ." // defines the grid layout using grid-area names
  max-width: 768px
  margin: auto
  // background: pink //uncomment to get a look at the grid structure
 
// responsive images

img
  width: 100%
  
.red
  color: red // spot color class
  
// main article title
  
.article__title
  grid-area: t // defines the grid area name
  text-align: right
  font-size: 5.4em
  text-transform: uppercase
  margin: 0
  font-family: 'Work Sans', sans-serif
  background: white
  
  h1
    padding: 0
    margin: 0
    font-weight: 900
    
    &:nth-child(2)
      margin: -60px 0 // shrink space above and below the second h1 element (Fashion)
  
// article subtitle and lead

.article__subtitle
  grid-area: st
  margin: 1em 0
  font-family: 'Work Sans', sans-serif
  background: white
  
  h2
    font-size: 2.2em
    padding: 0
    margin: 0 0 -10px // tighten up the spacing under the subtitle h2 element
    font-weight: 700
    
  h3
    font-size: 1.3em
    padding: 0
    margin: 0
    font-weight: 700
  
    
// columned text

.article__text
  columns: 2 // defines the number of columns for the article text
  column-gap: 1.5em // defines the gutter of the columns
  column-width: 200px // defines the minimum width of the columns
  background: white
  color: #444
  
  p
    font-weight: 400
  
    &:first-child
      margin-top: 0
  
// top text area

.text-1
  grid-area: t1 // defines the first text grid area
  
// article image

.article__image
  grid-area: i // defines the image grid area
  position: relative // this is necessary because of the absolutely positioned caption
  margin: 2em 0
 
// image caption

.caption
  position: absolute // places the caption on top of the image
  bottom: 0
  right: 20px
  text-align: right
  color: red
  font-style: italic
  font-size: .8em
  
// bottom text area
.text-2
  grid-area: t2 // defines the second text grid area
  

            
          
!
999px
🕑 One or more of the npm packages you are using needs to be built. You're the first person to ever need it! We're building it right now and your preview will start updating again when it's ready.
Loading ..................

Console