2026-05-13 21:02:05 +00:00
<!DOCTYPE html>
2026-05-13 13:32:19 -07:00
< html lang = "en" >
2026-05-13 21:02:05 +00:00
< head >
< title > This is my home page | </ title >
< meta name = "viewport" content = "width=device-width, initial-scale=1" >
< meta charset = "utf-8" >
<!-- Meta -->
< link rel = "canonical" href = "/" >
< meta name = "description" content = "" >
< meta name = "robots" content = "index,follow" >
< meta property = "og:title" content = "This is my home page | " >
< meta property = "og:type" content = "article" >
< meta property = "og:url" content = "/" >
< meta property = "og:description" content = "" >
2026-05-13 13:32:19 -07:00
2026-05-13 21:02:05 +00:00
2026-05-13 13:32:19 -07:00
2026-05-13 21:02:05 +00:00
< meta name = "generator" content = "Eleventy v3.1.5" >
2026-05-13 13:32:19 -07:00
2026-05-13 21:02:05 +00:00
<!-- CSS -->
2026-05-14 00:01:03 +00:00
2026-05-13 21:02:05 +00:00
< style >: root {
color-scheme : light dark ;
2026-05-14 00:01:03 +00:00
--color-light : #ddd ;
--color-dark : #222 ;
--color-teal : #014d4e ;
--color-pink : #ffb2d0 ;
--color-bg : light-dark ( var ( -- color - light ), var ( -- color - dark ));
--color-text : light-dark ( var ( -- color - dark ), var ( -- color - light ));
--color-accent : light-dark ( var ( -- color - teal ), var ( -- color - pink ));
2026-05-13 21:02:05 +00:00
}
2026-05-13 13:32:19 -07:00
2026-05-13 21:02:05 +00:00
/* numbered components are from https://www.joshwcomeau.com/css/custom-css-reset/ */
/* 1. Use a more-intuitive box-sizing model */
*, * :: before , * :: after {
box-sizing : border-box ;
}
2026-05-13 13:32:19 -07:00
2026-05-13 21:02:05 +00:00
/* 2. Remove default margin */
* : not ( dialog ) {
margin : 0 ;
}
2026-05-13 13:32:19 -07:00
2026-05-13 21:02:05 +00:00
/* 3. Enable keyword animations */
@ media ( prefers-reduced-motion : no-preference ) {
html {
interpolate-size : allow-keywords ;
}
}
2026-05-13 13:32:19 -07:00
2026-05-13 21:02:05 +00:00
body {
/* 4. Increase line-height */
line-height : 1.5 ;
/* 5. Improve text rendering */
-webkit- font-smoothing : antialiased ;
2026-05-14 00:01:03 +00:00
color : var ( -- color - text );
background-color : var ( -- color - bg );
font-family : sans-serif ;
2026-05-14 17:28:12 +00:00
color : black ;
2026-05-14 00:01:03 +00:00
}
# content {
width : 65 % ;
max-width : 1800 px ;
margin : 1 rem auto ;
}
@ media ( max-width : 1100px ) {
# content {
width : 85 % ;
}
}
@ media ( max-width : 650px ) {
# content {
width : 92 % ;
}
2026-05-13 21:02:05 +00:00
}
2026-05-13 13:32:19 -07:00
2026-05-13 21:02:05 +00:00
/* 6. Improve media defaults */
img , picture , video , canvas , svg {
display : block ;
max-width : 100 % ;
height : auto ;
2026-05-14 00:01:03 +00:00
margin : 0 auto ;
2026-05-13 21:02:05 +00:00
}
2026-05-13 13:32:19 -07:00
2026-05-13 21:02:05 +00:00
/* 7. Inherit fonts for form controls */
input , button , textarea , select {
font : inherit ;
}
2026-05-13 13:32:19 -07:00
2026-05-13 21:02:05 +00:00
/* 8. Avoid text overflows */
p , h1 , h2 , h3 , h4 , h5 , h6 {
overflow-wrap : break-word ;
}
2026-05-13 13:32:19 -07:00
2026-05-13 21:02:05 +00:00
/* 9. Improve line wrapping */
p {
text-wrap : pretty ;
}
h1 , h2 , h3 , h4 , h5 , h6 {
text-wrap : balance ;
}
2026-05-13 13:53:17 -07:00
2026-05-13 21:02:05 +00:00
/*
2026-05-13 13:32:19 -07:00
10. Create a root stacking context
*/
2026-05-13 21:02:05 +00:00
# root , # __next {
isolation : isolate ;
2026-05-14 00:01:03 +00:00
}
/* Basic elements */
h1 , h2 , h3 , h4 , h5 , h6 {
font-family : serif ;
}
h1 , h2 , h3 , h4 , h5 , h6 ,
a {
color : var ( -- color - accent );
}
a {
padding : .1 rem ;
border-radius : .05 rem ;
}
a : focus-visible {
outline : solid var ( -- color - accent );
}
. hero {
aspect-ratio : 32 / 9 ;
object-fit : cover ;
}
/* Print media */
@ media print {
header ,
footer ,
nav {
display : none ;
}
body {
background-color : #fff ;
width : 95 vw ;
}
body ,
h1 , h2 , h3 , h4 , h5 ,
a {
color : #000 ;
}
a :: after {
content : " (" attr ( href ) ")" ;
}
}
/* Header, footer, nav */
# skip {
background-color : var ( -- color - bg );
position : absolute ;
left : -999 px ;
top : -999 px ;
}
# skip : focus-visible {
left : 10 % ;
top : 5 % ;
}
header a [ aria-current = "page" ] :: before ,
footer a [ aria-current = "page" ] :: before {
content : "> " / "" ;
}
header a [ aria-current = "page" ] :: after ,
footer a [ aria-current = "page" ] :: after {
content : " <" / "" ;
}
header h2 a {
text-decoration : none ;
}
nav ul {
display : flex ;
justify-content : center ;
flex-flow : row wrap ;
list-style : none ;
gap : 1 rem ;
2026-05-13 21:02:05 +00:00
}</ style >
2026-05-13 13:32:19 -07:00
2026-05-13 21:02:05 +00:00
</ head >
2026-05-13 13:32:19 -07:00
2026-05-13 21:02:05 +00:00
< body >
2026-05-14 00:01:03 +00:00
< header >
2026-05-13 21:02:05 +00:00
< nav >
</ nav >
</ header >
2026-05-13 13:32:19 -07:00
2026-05-14 00:01:03 +00:00
< main id = "main" >
2026-05-13 13:32:19 -07:00
2026-05-14 00:01:03 +00:00
< img class = "hero" src = "/img/TPPh3kvfzS-4898.jpeg" alt = "chickadee" loading = "lazy" decoding = "async" width = "4898" height = "3265" >
2026-05-13 21:02:05 +00:00
2026-05-14 00:01:03 +00:00
< div id = "content" >
< h1 > This is my home page</ h1 >
2026-05-13 21:02:05 +00:00
2026-05-14 00:01:03 +00:00
2026-05-13 21:02:05 +00:00
< h2 > Here’ s an h2</ h2 >
< p > This is a paragraph.</ p >
< p > This is another paragraph. It might be a bit longer.</ p >
< ul >
< li >
< p > Here’ s a list.</ p >
</ li >
< li >
< p > It’ s nice, the editor automatically turns dashes into lists</ p >
</ li >
</ ul >
< p > And I can double-enter to get out of the list.</ p >
< h3 > Here’ s an h3</ h3 >
< p > Similarly, the editor understands markdown notation for headings. That’ s really handy. I also like that I can prevent editors from creating h1s (or h5/h6, who needs those).</ p >
< h4 > Let’ s do some formatting</ h4 >
< p >< em > Italics.</ em > < strong > Bold!</ strong > < em >< strong > Bold and italic.</ strong ></ em > There’ s even < s > strikethrough</ s > .</ p >
< p > Inline < code > code blocks</ code > work as well, though they don’ t pick up on markdown formatting.</ p >
< blockquote >
< p > Blockquotes work like this.</ p >
</ blockquote >
< p > Let’ s add a link. Here’ s my < a href = "https://leecat.art" > website</ a > . They let you choose internal vs. external. Annoyingly, in the rich text editor links are only distinguishable via color, so that’ s a bit of an accessibility fail.</ p >
< h2 > Let’ s do more with lists</ h2 >
< ol >
< li >
< p > Here’ s an ordered list</ p >
< ol >
< li >
< p > it has a nested ordered list inside of it!</ p >
</ li >
< li >
< p > How fancy.</ p >
</ li >
</ ol >
</ li >
< li >
< p > You can of course tab and shift+tab to change your list level.</ p >
</ li >
</ ol >
< hr >
< p > We’ ve got some lovely horizontal rules as well.</ p >
< h2 > Markdown attrs plugin</ h2 >
< p > Now, let’ s see if our markdown attributes feature works. Here’ s my < a href = "https://leecat.art" rel = "”external”" > website again</ a > . I suspect the smart quotes will cause issues! So that may not work.</ p >
< h2 > Images</ h2 >
< p >< img src = "/img/TPPh3kvfzS-4898.jpeg" alt = "" loading = "lazy" decoding = "async" width = "4898" height = "3265" ></ p >
< p > We’ ve added an image above. I tried to add alt text, but I’ m not sure that Eleventy will pick up on that.</ p >
< p > Ok, let’ s push this and see what we get.</ p >
2026-05-14 00:01:03 +00:00
</ div >
2026-05-13 21:02:05 +00:00
2026-05-14 00:01:03 +00:00
</ main >
2026-05-13 21:02:05 +00:00
< footer >
</ footer >
2026-05-14 17:28:12 +00:00
<!-- This page `/` was built on 2026-05-14T17:28:06.756Z -->
2026-05-13 21:02:05 +00:00
</ body >
2026-05-13 13:32:19 -07:00
</ html >