ruby monstas
play

Ruby Monstas Session 25 Agenda Recap Layouts Exercises Recap - PowerPoint PPT Presentation

Ruby Monstas Session 25 Agenda Recap Layouts Exercises Recap https://docs.google.com/presentation/d/1rxHrB4wLk7TMMMtIwC9azwNgnYQAFrae620IxjLHygI/edit#slide=id.ge8e058835_0_0 DIV element Text around<div> Outer DIV element


  1. Ruby Monstas Session 25

  2. Agenda Recap Layouts Exercises

  3. Recap https://docs.google.com/presentation/d/1rxHrB4wLk7TMMMtIwC9azwNgnYQAFrae620IxjLHygI/edit#slide=id.ge8e058835_0_0

  4. DIV element Text around<div> Outer DIV element <div>Inner DIV element</div> I will use the whole width of the site. </div>the DIV element This is a so-called block-level element. Because it breaks the flow of the elements into blocks. There are others: <h1>, <p>, <form> and so on

  5. SPAN element This is a <span>S</span>pan elment This is a so-called inline element. Because it flows inline with all other elements. There are others: <a>, <i>, <b>, <strong> and so on

  6. A simple layout example <!DOCTYPE HTML PUBLIC "- //W3C//DTD HTML 4.01//EN" "http://www.w3. org/TR/html4/strict.dtd"> <html> <body> <div class="header"> <h1>Header</h1> </div> <div class="sidebar"> <h2>Sidebar</h2> </div> <div class="content"> <h2>Content</h2> </div> <div class="footer"> <h1>Footer</h1> </div> </body> </html>

  7. CSS .header, .footer { width: 720px; } .sidebar { float: left; height: 50%; width: 220px; } .content { float: left; height: 50%; width: 488px; } .footer { clear: both; }

  8. HTML5: other elements An article with a title and text Embed audio & video <article> <h2>Article title</h2> <audio controls> <source src="foo.mp3" type="audio/mpeg"> <p>Article text</p> <source src="foo.ogg" type="audio/ogg"> </article> No support for audio </audio> <video controls> Main content <source src="foo.mp3" type="video/mpeg"> <source src="foo.ogg" type="video/ogg"> <main> No support for video <article> </video> ... </article> <article> ... </article> </main>

  9. Layouts

  10. Layouts What if we have a web app that always has the same structure with a certain part that is dynamic?

  11. Layouts <!doctype html> < html lang="en"> < head > < title >Home page</ title > < link rel="stylesheet" href="/css/style.css"> </ head > < body > < header > < h1 >Welcome to our webpage!</ h1 > </ header > < nav > <!-- navigation --> </ nav > <main> < h3 >Welcome to our home page!</ h3 > We are Shirley, Ines and Peter! </main> < footer > <!-- footer --> </ footer > </ body > </ html >

  12. Layouts <!doctype html> < html lang="en"> < head > < title >Home page</ title > < link rel="stylesheet" href="/css/style.css"> </ head > < body > < header > < h1 >Welcome to our webpage!</ h1 > </ header > < h3 >Welcome to our home page!</ h3 > < nav > <!-- navigation --> We are Shirley, Ines and Peter! </ nav > <main> <%= yield %> </main> < footer > <!-- footer --> </ footer > </ body > </ html >

  13. Layouts <!doctype html> < html lang="en"> < head > < title >Home page</ title > < link rel="stylesheet" href=" /css/style.css"> </ head > < body > < header > < h1 >Welcome to our webpage!</ h1 > < h3 >Welcome to our home page!</ h3 > </ header > < nav > We are Shirley, Ines and Peter! <!-- navigation --> </ nav > <main> <%= yield %> </main> < footer > <!-- footer --> </ footer > </ body > </ html >

  14. Layouts # app.rb get '/page' do erb :template1 end # views/layout.erb # views/template1.erb <!doctype html> < h3 >Welcome to our home page!</ h3 > < html lang="en"> [...] We are Shirley, Ines and Peter! < body > < header ></ header > < nav ></ nav > <main> <%= yield %> </main> < footer ></ footer > </ body > </ html >

  15. Layouts: Conclusion The layout is the starting point for rendering a template. In it, you will find a yield block that actually renders the template you specify. The layout is therefore static and the template that is yielded is your dynamic part.

  16. Your feedback, please? http://goo.gl/forms/rUrZqOPNq6 (Session 24)

  17. Time to practice

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend