<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Css on Jake Worth</title><link>https://jakeworth.com/tags/css/</link><description>Recent content in Css on Jake Worth</description><image><title>Jake Worth</title><url>https://jakeworth.com/twittercard.png</url><link>https://jakeworth.com/twittercard.png</link></image><generator>Hugo</generator><language>en-us</language><lastBuildDate>Fri, 08 May 2026 09:52:29 -0400</lastBuildDate><atom:link href="https://jakeworth.com/tags/css/index.xml" rel="self" type="application/rss+xml"/><item><title>Filled Emoji With CSS</title><link>https://jakeworth.com/tils/filled-emoji-with-css/</link><pubDate>Fri, 08 May 2026 09:52:29 -0400</pubDate><guid>https://jakeworth.com/tils/filled-emoji-with-css/</guid><description>&lt;p&gt;Today I learned how to fill in an emoji with CSS. Here&amp;rsquo;s an example:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-css" data-lang="css"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;.&lt;span style="color:#a6e22e"&gt;filledEmoji&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;color&lt;/span&gt;: &lt;span style="color:#66d9ef"&gt;transparent&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;text-shadow&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#39;0 0 0 #86efac&amp;#39;&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description></item><item><title>Apply a Conditional Border Without Moving Element</title><link>https://jakeworth.com/tils/apply-a-conditional-border-without-moving-element/</link><pubDate>Fri, 24 Mar 2023 09:11:39 -0400</pubDate><guid>https://jakeworth.com/tils/apply-a-conditional-border-without-moving-element/</guid><description>&lt;p&gt;When you allow a user&amp;rsquo;s behavior to add or remove a border from an element,
that can cause the page to &amp;lsquo;jump around&amp;rsquo; as the border is added or removed. A
common example is a border around an element that is &amp;lsquo;selected&amp;rsquo;.&lt;/p&gt;
&lt;p&gt;Fix this issue by adding a transparent border around the element and giving it
color when it&amp;rsquo;s selected. No more jumps.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-scss" data-lang="scss"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;.element&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;border&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;px&lt;/span&gt; solid transparent;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#a6e22e"&gt;.selectedElement&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#a6e22e"&gt;border-color&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; $selected-color;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description></item><item><title>Preserve Whitespace in CSS</title><link>https://jakeworth.com/tils/preserve-whitespace-in-css/</link><pubDate>Wed, 03 Aug 2022 10:30:10 -0400</pubDate><guid>https://jakeworth.com/tils/preserve-whitespace-in-css/</guid><description>&lt;p&gt;Let&amp;rsquo;s say you have a string evaluated into a HTML template that contains
newlines, like &lt;code&gt;&amp;quot;getting\n\things\ndone&amp;quot;&lt;/code&gt; and you want those newlines to be
reflected in the presentation. Like this:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;getting
things
done
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;We can solve this with the following CSS on the string&amp;rsquo;s containing element:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-css" data-lang="css"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;white-space&lt;/span&gt;&lt;span style="color:#f92672"&gt;:&lt;/span&gt; &lt;span style="color:#f92672"&gt;pre-wrap&lt;/span&gt;&lt;span style="color:#f92672"&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;With &lt;code&gt;pre-wrap&lt;/code&gt;, &amp;ldquo;[s]equences of white space are preserved. Lines are broken at
newline characters, at [breaks] and as necessary to fill line boxes.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://developer.mozilla.org/en-US/docs/Web/CSS/white-space"&gt;white-space docs&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Semicolon Breaks Everything</title><link>https://jakeworth.com/tils/semicolon-breaks-everything/</link><pubDate>Fri, 14 Jun 2019 11:58:15 -0400</pubDate><guid>https://jakeworth.com/tils/semicolon-breaks-everything/</guid><description>&lt;p&gt;&amp;ldquo;Select isn&amp;rsquo;t broken.&amp;rdquo; If you&amp;rsquo;re working on a CSS file, and none of your
changes are being applied, check for typos, crashed servers, misplaced files,
etc. Once you&amp;rsquo;ve ruled out simple mistakes, you might have a syntax error like
this:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-css" data-lang="css"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;.&lt;span style="color:#a6e22e"&gt;klass&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;opacity&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;0.5&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}&lt;span style="color:#f92672"&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;The trailing semicolon is incorrect, and none of the CSS below it can be
understood by the browser.&lt;/p&gt;
&lt;p&gt;Change this to:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-css" data-lang="css"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;.&lt;span style="color:#a6e22e"&gt;klass&lt;/span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;opacity&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;0.5&lt;/span&gt;;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;There may be some environments where a broken CSS file fails loudly; Code
Sandbox or Codepens are not among them. If you&amp;rsquo;re changing CSS and nothing is
happening, start looking for syntax errors.&lt;/p&gt;</description></item></channel></rss>