Bago ang course na ito: Web Development Basics (course 7.7). Dapat marunong ka nang magsulat ng HTML page na may mga heading, link, listahan at larawan, i-style ito gamit ang CSS (mga selector, ang box model, isang media query), magdagdag ng button click gamit ang JavaScript, gumamit ng DevTools at mag-publish gamit ang GitHub Pages. Mas malalim ang course na ito: totoong mga layout, data sa JavaScript, pagkuha mula sa API at accessibility. Gagawa tayo ng isang proyekto, ang "Canada Weather Cards", hakbang-hakbang.
Mga pundasyon ng responsive design
Ang responsive na page ay parang tubig sa baso: kinukuha nito ang hugis ng anumang paglalagyan. Magkakaibang baso ang phone, tablet at malaking monitor. Dapat maganda ang page sa lahat ng iyon nang hindi ka gumagawa ng tatlong website.
- Ang responsive web design (MDN) ay isang paraan para gumana ang mga page sa lahat ng laki ng screen. Pinagsasama nito ang flexible na mga layout, flexible na media at media queries.
- Mobile first: magsimula sa simpleng single-column na layout para sa makikitid na screen, saka magdagdag ng pagbabago sa layout para sa mas malalapad na screen.
- Laging isama ang viewport meta tag sa
<head>. Kapag wala ito, ipinapalagay ng mga mobile browser na mga 980px ang lapad at nagpapakita ng naka-zoom out na desktop layout:
<meta name="viewport" content="width=device-width, initial-scale=1">
- Umaangkop ang relative units:
%,rem(kaugnay ng root font size),em,vw(porsyento ng lapad ng viewport). Gamitin angrempara sa font size at spacing para igalang ng page ang text-size setting ng user. - Pinapayo ng MDN na tukuyin ang mga breakpoint sa relative units (gaya ng
rem) at baguhin ang layout kung saan nagsisimulang pumangit ang content, hindi sa mga laki ng partikular na device. - Gumagamit ng
min-widthang mga mobile-first na media query: ang base CSS ay para sa maliliit na screen, at ang query ang nagdaragdag ng pagbabago para sa mas malalapad. - Gawing kasya ang media sa lalagyan nito:
img { max-width: 100%; }. - Ang
box-sizing: border-boxay nagpapasama ng padding at border sa width, kaya mas madaling magsukat.
* { box-sizing: border-box; }
img { max-width: 100%; }
.site-header {
display: flex;
flex-direction: column;
gap: 8px;
padding: 16px;
}
@media (min-width: 40rem) {
.site-header {
flex-direction: row;
justify-content: space-between;
}
}
Sa makitid na screen, nakapatong-patong ang mga item ng header. Mula 40rem (640px sa default na font size), nasa iisang hanay na sila.
- Gumawa ng folder na
weather-cardsna mayindex.html,style.cssatapp.js. - Sa
index.html, idagdag ang doctype,lang="en", ang charset meta tag at ang viewport meta tag na nasa itaas. - Magdagdag ng header na may
h1("Canada Weather Cards") at isangnavna may dalawang link. - Sa
style.css, idagdag ang* { box-sizing: border-box; }atimg { max-width: 100%; }. - Isulat muna ang base (phone) na mga style: padding sa
remopx, madaling basahing font size, wala pang media query. - Magdagdag ng isang
@media (min-width: 40rem)block para sa mas malalapad na screen. - Buksan ang DevTools, i-click ang Device toolbar at i-drag ang lapad mula maliit hanggang malaki (maaaring magkaiba ang mga pangalan depende sa version).
- Check: walang pasidlong na pag-scroll sa 360px na lapad, at nagbabago ang layout kapag lumampas ka na sa 640px.
Videos by other creators on YouTube, for reference. They are not made by or affiliated with The Future Market.
Read the video script
[Host] "Kasya ang responsive na page sa anumang screen, gaya ng tubig na kasya sa anumang baso."
[Text on screen: <meta name="viewport" content="width=device-width, initial-scale=1">] "Unang hakbang: ang viewport tag. Kapag wala ito, maliit na desktop page ang ipapakita ng phone."
[Screen: CSS na may min-width media query, lumalapad ang browser window] "Magsimula sa layout ng phone. Tapos magdagdag ng min-width query para sa mas malalaking screen."
[Host] "Baguhin ang layout kung saan pumapangit ang content mo, hindi sa laki ng isang phone lang."
Gawin ang project folder at ang header mula sa mga hakbang 1 hanggang 8. Subukan ito sa DevTools Device toolbar sa tatlong lapad at isulat kung sa anong lapad nagbabago ang layout.
ClaudeStuck? Copy a ready-made prompt for Claude
Copy this, open Claude, paste it, and Claude will walk you through the lesson step by step.
For a grown-up: Claude is for adults (18+). Copy this, paste it into Claude, and use the answer to explain the lesson to your child.
I'm learning "Front-End Development: mga responsive layout at JavaScript app" on The Future Market. Lesson 1: "Mga pundasyon ng responsive design".
What the lesson teaches:
- Ang responsive web design (MDN) ay isang paraan para gumana ang mga page sa lahat ng laki ng screen. Pinagsasama nito ang flexible na mga layout, flexible na media at media queries.
- Mobile first: magsimula sa simpleng single-column na layout para sa makikitid na screen, saka magdagdag ng pagbabago sa layout para sa mas malalapad na screen.
- Laging isama ang viewport meta tag sa <head>. Kapag wala ito, ipinapalagay ng mga mobile browser na mga 980px ang lapad at nagpapakita ng naka-zoom out na desktop layout:
- Umaangkop ang relative units: %, rem (kaugnay ng root font size), em, vw (porsyento ng lapad ng viewport). Gamitin ang rem para sa font size at spacing para igalang ng page ang text-size setting ng user.
- Pinapayo ng MDN na tukuyin ang mga breakpoint sa relative units (gaya ng rem) at baguhin ang layout kung saan nagsisimulang pumangit ang content, hindi sa mga laki ng partikular na device.
- Gumagamit ng min-width ang mga mobile-first na media query: ang base CSS ay para sa maliliit na screen, at ang query ang nagdaragdag ng pagbabago para sa mas malalapad.
- Gawing kasya ang media sa lalagyan nito: img { max-width: 100%; }.
The exercise I'm working on:
Gawin ang project folder at ang header mula sa mga hakbang 1 hanggang 8. Subukan ito sa DevTools Device toolbar sa tatlong lapad at isulat kung sa anong lapad nagbabago ang layout.
I'm stuck. Please:
1. Explain the main idea in plain, simple words with one everyday example.
2. Walk me through the exercise one small step at a time. Ask me what I've done so far before giving the next step.
3. Don't just give me the final answer. Help me do it myself, and check my work when I share it.I'm a parent helping my child (about 8 years old) with a lesson called "Mga pundasyon ng responsive design" from the course "Front-End Development: mga responsive layout at JavaScript app". Here's what the lesson says: Ang responsive na page ay parang tubig sa baso: kinukuha nito ang hugis ng anumang paglalagyan. Magkakaibang baso ang phone, tablet at malaking monitor. Dapat maganda ang page sa lahat ng iyon nang hindi ka gumagawa ng tatlong website. The activity: Gawin ang project folder at ang header mula sa mga hakbang 1 hanggang 8. Subukan ito sa DevTools Device toolbar sa tatlong lapad at isulat kung sa anong lapad nagbabago ang layout. Please explain this so an 8-year-old understands: short sentences, a fun everyday example, and no hard words. Then give me 3 simple questions I can ask my child to check they understood, and a way to do the activity together, one tiny step at a time.
Sources
- MDN Web Docs, Responsive web design: developer.mozilla.org/en-US/docs/Learn_web_development/Core/CSS_layout
Flexbox: paglalagay ng mga bagay sa hanay
This lesson is part of full access: every course and every level for one payment.
CSS Grid: mga card at page layout
This lesson is part of full access: every course and every level for one payment.
JavaScript data, rendering at pag-save
This lesson is part of full access: every course and every level for one payment.
Pagkuha ng data mula sa API
This lesson is part of full access: every course and every level for one payment.
Gawing accessible at madaling gamitin
This lesson is part of full access: every course and every level for one payment.
Pagsamahin, mag-debug at mag-publish
This lesson is part of full access: every course and every level for one payment.
Final project
This lesson is part of full access: every course and every level for one payment.
Quiz
Aling tag ang nagpapagamit sa mga phone ng totoong lapad ng device?
Ang viewport meta tag,
<meta name="viewport" content="width=device-width, initial-scale=1">.Ano ang ibig sabihin ng mobile first?
Isulat muna ang mga style para sa maliliit na screen, tapos magdagdag ng pagbabago para sa mas malalapad na screen gamit ang
min-widthmedia queries.Aling property ang naghahanay ng flex items sa main axis?
justify-content.Ano ang ginagawa ng
repeat(auto-fit, minmax(14rem, 1fr))?Gumagawa ng kasing-dami ng column na kasya, bawat isa ay hindi bababa sa 14rem ang lapad, na naghahati sa natirang espasyo.
Kailan mo pipiliin ang grid kaysa flexbox?
Para sa mga layout na sabay ang mga row at column (2D), gaya ng card grid. Ang flexbox ay para sa isang direksyon.
Bakit
textContentang gamitin sa halip nainnerHTMLpara sa text mula sa API?Itinuturing nito ang text bilang payak na text, kaya walang hindi gustong HTML na naipapasok.
Anong uri ng data ang kayang itago ng
localStorage, at paano mo mase-save ang array?Strings lang; gamitin ang
JSON.stringify()para mag-save atJSON.parse()para magbasa.Nagre-reject ba ang
fetch()sa 404 o 500 na status?Hindi. I-check ang
response.okat mag-throw ng sarili mong error.Anong tatlong estado ang dapat ipakita ng isang data app?
Loading, success at error.
Ano ang ginagawa ng
role="status"oaria-live="polite"?Inaanunsyo ang mga pagbabago sa text sa mga user ng screen reader nang hindi inililipat ang focus.
Bakit dapat nakikita ang keyboard focus?
Para makita ng mga keyboard user kung nasaan sila; i-style ito gamit ang
:focus-visiblesa halip na alisin.Para ba sa mga online store o sensitibong transaksyon ang GitHub Pages?
Hindi.
Final exam
This lesson is part of full access: every course and every level for one payment.
Certificate
This lesson is part of full access: every course and every level for one payment.