Your journal entry goes here.
You can even keep your separate paragraphs! Once this gets long enough it will scroll for you.
You can also add images.
CSS and work-skin for a fake local journaling app for use in fics. Use it to style journal/diary entries for a character who wouldn't post their innermost thoughts in a blog, but would put them in a device for themselves.
(See the end of the work for other works inspired by this one.)
I was working on a fic when I decided I needed a section which resembled an offline journaling app to house a character's journal entry, so I edited the coding from "How to Mimic Email Windows" linked above to create what I was looking for. I used the light mode version in my fic, but realized some people might want a dark mode, so I've provided the code for that as well.
The fic is currently in an exchange, so I've tossed the coding into an anon collection until reveals. Once reveals happen, I'll also add a link here to the github repository for easier download.
GitHub Repo Link: here
☆ None! Literally.
☆ Credit (or not) if you want to.
☆ Edit at will (or not).
☆ Feel free to comment with links to fics where this has been used (not required).
If you run into issues with implementing this, please feel free to ask here or by opening an issue on the github repo once linked!
Your journal entry goes here.
You can even keep your separate paragraphs! Once this gets long enough it will scroll for you.
You can also add images.
Your journal entry goes here.
You can even keep your separate paragraphs! Once this gets long enough it will scroll for you.
You can also add images.
Tip: Use the "Both" chapter css contents if you think you might want to use both light mode and dark mode in a single or multiple fics. This will prevent you from needing to create multiple work skins.
<p> </p>, i.e.
<p>This is my first paragraph</p>
<p>This is my second paragraph</p>
<img src="direct_image_link">.
<u> </u>, i.e.<p class="optionalmeta"><b>tags:</b> <u>tag 1</u>, <u>tag 2</u>, <u>tag 3</u></p>
#workskin .journalapp {
margin-left: auto;
margin-right: auto;
margin-top: 0;
margin-bottom: 0;
}
#workskin .journalbar {
background-color: #959AE3;
color: #FFFFFF;
border-color: #959AE3;
border-style: solid;
border-width: 1px;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
height: 1.5em;
overflow: hidden;
text-overflow: clip;
border-top-left-radius: 10px;
border-top-right-radius: 10px;
}
#workskin .journalbar::before {
content: 'Journal.me';
display: inline-block;
position: relative;
float: left;
font-weight: bold;
padding: 0 3px;
width: 85%;
}
#workskin .journalbar::after {
content: '≡';
display: inline-block;
position: relative;
font-weight: bold;
padding-right: 5px;
float: right;
color: #ffffff;
cursor: pointer;
}
#workskin .requiredmeta {
border-color: #cfcfcf;
border-style: solid;
border-width: 1px;
border-bottom: none;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
color: #000000;
background-color: #FFFFFF;
}
#workskin .optionalmeta {
border-color: #cfcfcf;
border-style: solid;
border-width: 1px;
border-bottom: none;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
color: #999999;
background-color: #FFFFFF;
}
#workskin .entry {
width: 75%;
padding-top: 0;
padding-bottom: 0;
padding-left: 5px;
padding-right: 5px;
text-align: justify;
color: #000000;
background-color: #FFFFFF;
margin-left: auto;
margin-right: auto;
overflow: auto;
display: block;
height: 300px;
border-color: #cfcfcf;
border-style: solid;
border-width: 1px;
}
#workskin .entry p {
padding-left: 5px;
padding-right: 5px;
}
#workskin .entry::-webkit-scrollbar {
-webkit-appearance: none;
}
#workskin .entry::-webkit-scrollbar:vertical {
width: 12px;
}
#workskin .entry::-webkit-scrollbar:horizontal {
height: 12px;
}
#workskin .entry::-webkit-scrollbar-thumb {
background-color: rgba(0, 0, 0, .5);
border-radius: 10px;
border: 2px solid #ffffff;
}
#workskin .entry::-webkit-scrollbar-track {
border-radius: 10px;
background-color: #ffffff;
}
#workskin .actionbar {
border-color: #cfcfcf;
background-color: #f5f5f5;
color: #999999;
border-style: solid;
border-width: 1px;
border-top: none;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
height: 1.5em;
overflow: hidden;
text-overflow: clip;
border-bottom-left-radius: 10px;
border-bottom-right-radius: 10px;
}
#workskin .actionbar::after {
content: '✐ ↑ ␡';
display: inline-block;
position: relative;
float: right;
padding: 0 3px;
cursor: pointer;
}
<div class="journalapp">
<p class="journalbar"> </p>
<p class="requiredmeta"><b>date:</b> [Entry Date/Time]</p>
<p class="requiredmeta"><b>title:</b> [Entry Title]</p>
<p class="optionalmeta"><b>tags:</b> (optional) separate tags with commas</p>
<p class="optionalmeta"><b>mood:</b> (optional)</p></div><div class="entry">
<p>Your journal entry goes here.</p>
<p>You can even keep your separate paragraphs! Once this gets long enough it will scroll for you.</p>
<p>You can also add images.</p>
<p><img src="https://i.imgur.com/tVxlStA.png" /></p></div>
<p class="actionbar"> </p>
#workskin .journalapp {
margin-left: auto;
margin-right: auto;
margin-top: 0;
margin-bottom: 0;
}
#workskin .djournalbar {
background-color: #5F6290;
color: #202225;
border-color: #5F6290;
border-style: solid;
border-width: 1px;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
height: 1.5em;
overflow: hidden;
text-overflow: clip;
border-top-left-radius: 10px;
border-top-right-radius: 10px;
}
#workskin .djournalbar::before {
content: 'Journal.me';
display: inline-block;
position: relative;
float: left;
font-weight: bold;
padding: 0 3px;
width: 85%;
}
#workskin .djournalbar::after {
content: '≡';
display: inline-block;
position: relative;
font-weight: bold;
padding-right: 5px;
float: right;
color: #202225;
cursor: pointer;
}
#workskin .drequiredmeta {
border-color: #202225;
border-style: solid;
border-width: 1px;
border-bottom: none;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
color: #ffffff;
background-color: #36393F;
}
#workskin .doptionalmeta {
border-color: #202225;
border-style: solid;
border-width: 1px;
border-bottom: none;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
color: #72767D;
background-color: #36393F;
}
#workskin .dentry {
width: 75%;
padding-top: 0;
padding-bottom: 0;
padding-left: 5px;
padding-right: 5px;
text-align: justify;
color: #ffffff;
background-color: #36393F;
margin-left: auto;
margin-right: auto;
overflow: auto;
display: block;
height: 300px;
border-color: #202225;
border-style: solid;
border-width: 1px;
}
#workskin .dentry p {
padding-left: 5px;
padding-right: 5px;
}
#workskin .dentry::-webkit-scrollbar {
-webkit-appearance: none;
}
#workskin .dentry::-webkit-scrollbar:vertical {
width: 12px;
}
#workskin .dentry::-webkit-scrollbar:horizontal {
height: 12px;
}
#workskin .dentry::-webkit-scrollbar-thumb {
background-color: rgba(0, 0, 0, .5);
border-radius: 10px;
border: 2px solid #36393F;
}
#workskin .dentry::-webkit-scrollbar-track {
border-radius: 10px;
background-color: #36393F;
}
#workskin .dactionbar {
border-color: #202225;
background-color: #2F3136;
color: #72767D;
border-style: solid;
border-width: 1px;
border-top: none;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
height: 1.5em;
overflow: hidden;
text-overflow: clip;
border-bottom-left-radius: 10px;
border-bottom-right-radius: 10px;
}
#workskin .dactionbar::after {
content: '✐ ↑ ␡';
display: inline-block;
position: relative;
float: right;
padding: 0 3px;
cursor: pointer;
}
<div class="journalapp">
<p class="djournalbar"> </p>
<p class="drequiredmeta"><b>date:</b> [Entry Date/Time]</p>
<p class="drequiredmeta"><b>title:</b> [Entry Title]</p>
<p class="doptionalmeta"><b>tags:</b> (optional) separate tags with commas</p>
<p class="doptionalmeta"><b>mood:</b> (optional)</p></div><div class="dentry">
<p>Your journal entry goes here.</p>
<p>You can even keep your separate paragraphs! Once this gets long enough it will scroll for you.</p>
<p>You can also add images.</p>
<p><img src="https://i.imgur.com/tVxlStA.png" /></p></div>
<p class="dactionbar"> </p>
#workskin .journalapp {
margin-left: auto;
margin-right: auto;
margin-top: 0;
margin-bottom: 0;
}
#workskin .journalbar {
background-color: #959AE3;
color: #FFFFFF;
border-color: #959AE3;
border-style: solid;
border-width: 1px;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
height: 1.5em;
overflow: hidden;
text-overflow: clip;
border-top-left-radius: 10px;
border-top-right-radius: 10px;
}
#workskin .journalbar::before {
content: 'Journal.me';
display: inline-block;
position: relative;
float: left;
font-weight: bold;
padding: 0 3px;
width: 85%;
}
#workskin .journalbar::after {
content: '≡';
display: inline-block;
position: relative;
font-weight: bold;
padding-right: 5px;
float: right;
color: #ffffff;
cursor: pointer;
}
#workskin .requiredmeta {
border-color: #cfcfcf;
border-style: solid;
border-width: 1px;
border-bottom: none;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
color: #000000;
background-color: #FFFFFF;
}
#workskin .optionalmeta {
border-color: #cfcfcf;
border-style: solid;
border-width: 1px;
border-bottom: none;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
color: #999999;
background-color: #FFFFFF;
}
#workskin .entry {
width: 75%;
padding-top: 0;
padding-bottom: 0;
padding-left: 5px;
padding-right: 5px;
text-align: justify;
color: #000000;
background-color: #FFFFFF;
margin-left: auto;
margin-right: auto;
overflow: auto;
display: block;
height: 300px;
border-color: #cfcfcf;
border-style: solid;
border-width: 1px;
}
#workskin .entry p {
padding-left: 5px;
padding-right: 5px;
}
#workskin .entry::-webkit-scrollbar {
-webkit-appearance: none;
}
#workskin .entry::-webkit-scrollbar:vertical {
width: 12px;
}
#workskin .entry::-webkit-scrollbar:horizontal {
height: 12px;
}
#workskin .entry::-webkit-scrollbar-thumb {
background-color: rgba(0, 0, 0, .5);
border-radius: 10px;
border: 2px solid #ffffff;
}
#workskin .entry::-webkit-scrollbar-track {
border-radius: 10px;
background-color: #ffffff;
}
#workskin .actionbar {
border-color: #cfcfcf;
background-color: #f5f5f5;
color: #999999;
border-style: solid;
border-width: 1px;
border-top: none;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
height: 1.5em;
overflow: hidden;
text-overflow: clip;
border-bottom-left-radius: 10px;
border-bottom-right-radius: 10px;
}
#workskin .actionbar::after {
content: '✐ ↑ ␡';
display: inline-block;
position: relative;
float: right;
padding: 0 3px;
cursor: pointer;
}
#workskin .djournalbar {
background-color: #5F6290;
color: #202225;
border-color: #5F6290;
border-style: solid;
border-width: 1px;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
height: 1.5em;
overflow: hidden;
text-overflow: clip;
border-top-left-radius: 10px;
border-top-right-radius: 10px;
}
#workskin .djournalbar::before {
content: 'Journal.me';
display: inline-block;
position: relative;
float: left;
font-weight: bold;
padding: 0 3px;
width: 85%;
}
#workskin .djournalbar::after {
content: '≡';
display: inline-block;
position: relative;
font-weight: bold;
padding-right: 5px;
float: right;
color: #202225;
cursor: pointer;
}
#workskin .drequiredmeta {
border-color: #202225;
border-style: solid;
border-width: 1px;
border-bottom: none;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
color: #ffffff;
background-color: #36393F;
}
#workskin .doptionalmeta {
border-color: #202225;
border-style: solid;
border-width: 1px;
border-bottom: none;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
color: #72767D;
background-color: #36393F;
}
#workskin .dentry {
width: 75%;
padding-top: 0;
padding-bottom: 0;
padding-left: 5px;
padding-right: 5px;
text-align: justify;
color: #ffffff;
background-color: #36393F;
margin-left: auto;
margin-right: auto;
overflow: auto;
display: block;
height: 300px;
border-color: #202225;
border-style: solid;
border-width: 1px;
}
#workskin .dentry p {
padding-left: 5px;
padding-right: 5px;
}
#workskin .dentry::-webkit-scrollbar {
-webkit-appearance: none;
}
#workskin .dentry::-webkit-scrollbar:vertical {
width: 12px;
}
#workskin .dentry::-webkit-scrollbar:horizontal {
height: 12px;
}
#workskin .dentry::-webkit-scrollbar-thumb {
background-color: rgba(0, 0, 0, .5);
border-radius: 10px;
border: 2px solid #36393F;
}
#workskin .dentry::-webkit-scrollbar-track {
border-radius: 10px;
background-color: #36393F;
}
#workskin .dactionbar {
border-color: #202225;
background-color: #2F3136;
color: #72767D;
border-style: solid;
border-width: 1px;
border-top: none;
margin-top: 0;
margin-bottom: 0;
width: 75%;
padding: 5px;
height: 1.5em;
overflow: hidden;
text-overflow: clip;
border-bottom-left-radius: 10px;
border-bottom-right-radius: 10px;
}
#workskin .dactionbar::after {
content: '✐ ↑ ␡';
display: inline-block;
position: relative;
float: right;
padding: 0 3px;
cursor: pointer;
}
81Rodrick18, lonelystars, MK23Socom, ArmyDreamer, buzzingmoth, foreveryearning, entropy_muffin, darvin, lobotomycore, antibacterialjelloshots, Charles_Rockafellor, PresidentHades, ponfarronline, Salaewt, Wisteria_Asteria_Hysteria, someUnnamedStar, TopfSecret, cmdonovann, odysseus_calls, calypso_on_a_cloud, TheTentacleCommander, matchastars, Tar_Dar, mackerel_cheese, plump_shark_buttcheeks, DistantManiacalLaughter, forgedinwinter, Katophoenix, MischaB1ooms, KitKaos, MX_GL1TCH, ouat0201, e_o_n_s, queertannieluvr, classactical, fir_forest, Ultraviollett, RiceOfThePuffedVariety, viktomania, khashmiddleton, Balrog_Vanquisher, TaroRush, PunkRockGuitar, RammBook, amortention, mystyrust, haemalhart, passarinho, sunsolace, Dilaab, and 18 more users as well as 8 guests left kudos on this work!
Charles_Rockafellor on Chapter 1 Sat 19 Jul 2025 12:45AM UTC
Comment Actions
RiceOfThePuffedVariety on Chapter 2 Wed 09 Aug 2023 02:25PM UTC
Comment Actions