Beaucoup de gens me demandaient combien de temps allaient y consacrer. J'étais comme peut-être 2 ou 3 semaines. Mais cette question m’a amené à repenser le temps que je passe sur le site Web. J'ai passé 8 heures uniquement sur la page d'accueil. J'ai donc décidé de créer rapidement du contenu, et de ne pas me concentrer sur les moindres détails, comme je l'ai fait les jours précédents. J'ai perdu beaucoup de votre attention, passons maintenant directement au processus.
Je vais commencer par créer le fichier périodicité-of-elements-qa.html dans le répertoire Chemistry/3/. Cette page comprendra des questions et réponses sur le thème de la périodicité des éléments.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Periodicity of Elements - Questions and Answers</title> <!-- styles and scripts --> </head> <body> <header> <nav> <div> <p>As usual, I included a basic HTML boilerplate with links to necessary scripts and styles, along with navigation to main pages. I am using a container div, aside element with the id table-of-contents, which will be populated using javascript, and finally the main tag.</p> <p>Next, I added the content, formatted with heading tags and some paragraph tags for the main body. For formulas and symbols I used the LaTeX syntax, LaTeX is used because it is the go-to standard:<br> </p> <pre class="brush:php;toolbar:false"> <h2> <p>This contains a lot of content, which is formatted using headings and sub-headings, some lists and tables. I also added an "About the Author" tag for authenticity.</p> <p>I needed to style this page so that the text can be readable, and it doesn't look too bad. I will add an additional css file into this page, keeping style.css and style-main.css for common elements.</p> <h2> Hour 20: Styling the content page and adding JS for dynamic Table of Contents </h2> <p>I created an style tag inside the head element, and added basic style to it:<br> </p> <pre class="brush:php;toolbar:false"> <style> header { background: linear-gradient(135deg, #252525 0%, #303030 100%); /* Subtle gradient for depth */ padding: 1.2rem 0; /* Slightly increased padding */ box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); /* More pronounced, darker shadow */ position: sticky; top: 0; z-index: 1000; /* Increased z-index for better layering */ transition: box-shadow 0.3s ease-in-out, transform 0.3s ease-in-out; /* Smooth transition for sticky effect */ transform: translateY(0); /* Initial state for smooth sticky animation */ } header.sticky-active { box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3); /* Different shadow when sticky */ transform: translateY(-5px); /* Slight lift when sticky */ } nav { display: flex; justify-content: space-between; align-items: center; max-width: 1200px; margin: 0 auto; padding: 0 30px; /* Slightly increased side padding */ } .logo { font-size: 2rem; /* Slightly larger logo */ font-weight: 700; /* Bolder logo */ color: #7db4ff; /* Updated logo color, slightly lighter */ text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4); /* Subtle text shadow for depth */ transition: transform 0.3s ease-in-out; } .logo:hover { transform: scale(1.05); /* Gentle scale on hover */ } nav ul { list-style: none; padding: 0; margin: 0; display: flex; gap: 30px; /* Use gap for spacing between list items */ } nav ul li a { text-decoration: none; color: #f0f0f0; /* Slightly brighter text color */ position: relative; /* For the underline effect */ padding-bottom: 4px; /* Space for the underline */ transition: color 0.3s ease-in-out, transform 0.3s ease-in-out; overflow: hidden; /* Clip the pseudo-element */ } nav ul li a::before { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; background-color: #7db4ff; /* Same as logo color for consistency */ transform: scaleX(0); /* Initially hidden */ transform-origin: bottom right; transition: transform 0.4s ease-out; } nav ul li a:hover { color: #90caf9; /* Lighter hover color */ transform: translateY(-2px); /* Slight lift on hover */ } nav ul li a:hover::before { transform: scaleX(1); transform-origin: bottom left; } /* Optional: Add an active state highlight */ nav ul li a.active { color: #90caf9; font-weight: 600; } nav ul li a.active::before { transform: scaleX(1); } /* Enhancements for Mobile (consider using JavaScript for more advanced mobile menus) */ @media (max-width: 1024px) { header { display: hidden; } } :root { --primary-bg: #f9f9f9; /* Very light grey for a softer white */ --secondary-bg: #ffffff; /* Pure white for content areas */ --text-primary: #212121; /* Dark grey for primary text */ --text-secondary: #757575; /* Medium grey for secondary text */ --accent-color: #2962ff; /* A vibrant blue */ --hover-color: #5393ff; /* Lighter blue for hover states */ --border-color: #e0e0e0; /* Light grey for borders */ --code-bg: #f0f0f0; /* Very light grey for code backgrounds */ --code-text: #333333; /* Dark grey for code text */ --toc-active: #2962ff; --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05); --shadow-md: 0 4px 8px rgba(0, 0, 0, 0.1); --transition-fast: 0.15s ease-in-out; --transition-normal: 0.3s ease-in-out; } body { font-family: 'Roboto', sans-serif; /* A clean and modern sans-serif font */ line-height: 1.6; margin: 0; background-color: var(--primary-bg); color: var(--text-primary); padding-bottom: 40px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; scroll-behavior: smooth; overflow-x: hidden; } /* Custom Scrollbar - Light theme version */ ::-webkit-scrollbar { width: 8px; } ::-webkit-scrollbar-track { background: #f1f1f1; } ::-webkit-scrollbar-thumb { background-color: #bdbdbd; border-radius: 4px; } ::-webkit-scrollbar-thumb:hover { background-color: #9e9e9e; } .container { max-width: 1200px; margin: 50px auto; padding: 60px; background-color: var(--secondary-bg); box-shadow: var(--shadow-md); border-radius: 8px; display: grid; grid-template-columns: minmax(250px, 300px) 1fr; gap: 40px; } #table-of-contents { padding: 30px; background-color: var(--secondary-bg); border-radius: 6px; position: sticky; top: 30px; height: fit-content; border: 1px solid var(--border-color); } /* Custom Scrollbar for Table of Contents */ #table-of-contents::-webkit-scrollbar { width: 6px; /* Thinner scrollbar */ } #table-of-contents::-webkit-scrollbar-track { background: #f1f1f1; /* Light background for the track */ border-radius: 3px; /* Slightly rounded track */ } #table-of-contents::-webkit-scrollbar-thumb { background-color: #bdbdbd; /* Medium grey for the thumb */ border-radius: 3px; /* Slightly rounded thumb */ } #table-of-contents::-webkit-scrollbar-thumb:hover { background-color: #9e9e9e; /* Darker grey on hover */ } #table-of-contents > h2 { font-size: 1.5rem; margin-top: 0; margin-bottom: 15px; color: var(--text-primary); border-bottom: 1px solid var(--border-color); padding-bottom: 8px; text-align: left; } #table-of-contents ul { list-style: none; padding: 0; margin: 0; } #table-of-contents li { margin-bottom: 10px; padding-left: 0; border-left: 3px solid transparent; transition: border-left-color var(--transition-fast), color var(--transition-fast); } #table-of-contents li:hover, #table-of-contents li.active { border-left-color: var(--toc-active); } #table-of-contents li.active > a { color: var(--toc-active); font-weight: 500; } #table-of-contents a { text-decoration: none; color: var(--text-secondary); display: block; padding: 6px 0; transition: color var(--transition-fast); } #table-of-contents a:hover { color: var(--hover-color); } #table-of-contents ul ul { margin-left: 15px; margin-top: 6px; } /* Main content styles - Focus on readability */ main { padding: 40px; border-radius: 6px; overflow: hidden; background-color: var(--secondary-bg); box-shadow: var(--shadow-sm); } main > *:not(:last-child) { margin-bottom: 2em; } h1, h2, h3, h4, h5, h6 { font-weight: 700; color: var(--text-primary); letter-spacing: -0.01em; } h1 { font-size: 2.5rem; border-bottom: 2px solid var(--accent-color); padding-bottom: 0.4em; margin-bottom: 1em; } h2 { font-size: 24px; border-bottom: 1px solid var(--accent-color); padding-bottom: 0.3em; margin-bottom: 0.9em; color: var(--accent-color); } h3 { font-size: 1.6rem; margin-bottom: 0.7em; } h4 { font-size: 1.4rem; margin-bottom: 0.6em; } p { margin-bottom: 1.5em; color: var(--text-secondary); orphans: 3; widows: 3; word-break: break-word; } ul, ol { margin-left: 25px; margin-bottom: 1.7em; } li { margin-bottom: 0.7em; color: var(--text-secondary); line-height: 1.5; word-break: break-word; } strong { font-weight: 600; color: var(--text-primary); } em { font-style: italic; color: var(--accent-color); } a { color: var(--accent-color); text-decoration: none; transition: color var(--transition-fast); border-bottom: 1px solid transparent; /* Subtle underline on hover */ } a:hover { color: var(--hover-color); border-bottom-color: var(--hover-color); } table { width: 100%; border-collapse: collapse; margin-bottom: 2em; border: 1px solid var(--border-color); border-radius: 4px; background-color: var(--secondary-bg); } th, td { padding: 12px 15px; text-align: left; border-bottom: 1px solid var(--border-color); word-break: break-word; } th { background-color: #f5f5f5; /* Lighter header background */ font-weight: 600; color: var(--text-primary); } tbody tr:nth-child(even) { background-color: #fafafa; /* Very light grey for even rows */ } /* Code blocks - Light theme styling */ pre { background-color: var(--code-bg); color: var(--code-text); padding: 12px 18px; border-radius: 4px; overflow-x: auto; font-family: 'Menlo', monospace; font-size: 0.9rem; line-height: 1.5; margin-bottom: 1.6em; white-space: pre-wrap; border: 1px solid var(--border-color); } code { font-family: 'Menlo', monospace; background-color: #e8e8e8; /* Even lighter background for inline code */ color: var(--code-text); padding: 3px 6px; border-radius: 3px; word-break: break-word; } pre code { background-color: transparent; padding: 0; } /* Horizontal rules - Simpler style */ hr { border: none; height: 1px; background-color: var(--border-color); margin: 2em 0; } /* Blockquotes - Clean separation */ blockquote { border-left: 3px solid var(--accent-color); padding: 10px 15px; margin: 1.5em 0; font-style: italic; background-color: #f5f5f5; border-radius: 3px; color: var(--text-secondary); } blockquote p { margin-bottom: 0; } /* Responsive adjustments */ @media (max-width: 1024px) { .container { max-width: 90%; padding: 50px; grid-template-columns: 1fr; gap: 30px; } #table-of-contents { position: static; margin-bottom: 30px; } #table-of-contents > h2 { text-align: center; } } @media (max-width: 768px) { main { padding: 30px; } h1 { font-size: 2.2rem; } h2 { font-size: 22px; } nav{ display:none; } } @media (max-width: 480px) { .container { padding: 30px; } h1 { font-size: 2rem; } h2 { font-size: 20px; } } </style>
Il s'agit simplement d'un style de base, avec quelques modifications de l'en-tête et du contenu principal, pour garantir que les éléments sont lisibles, ne sont pas trop distrayants et sont cohérents sur l'ensemble du site Web.
J'ai également ajouté du CSS pour les tableaux, les guillemets et les blocs de code pour améliorer la lisibilité.
Je souhaitais également ajouter un script pour rendre la table des matières à gauche interactive. J'ai donc ajouté ce script en bas de la balise body :
<script> // script.js document.addEventListener('DOMContentLoaded', () => { const mainContent = document.querySelector('main'); const tableOfContents = document.getElementById('table-of-contents'); if (!mainContent || !tableOfContents) { console.error('Main content or table of contents element not found.'); return; } const headings = mainContent.querySelectorAll('h2, h3, h4'); const tocList = document.createElement('ul'); let currentList = tocList; const stack = [currentList]; headings.forEach(heading => { const tagName = heading.tagName; const id = heading.id; const text = heading.textContent; if (id) { const listItem = document.createElement('li'); const link = document.createElement('a'); link.href = `#${id}`; link.textContent = text; listItem.appendChild(link); if (tagName === 'H2') { while (stack.length > 1) { stack.pop(); } currentList = stack[stack.length - 1]; currentList.appendChild(listItem); stack.push(document.createElement('ul')); currentList = stack[stack.length - 1]; listItem.appendChild(currentList); } else if (tagName === 'H3') { while (stack.length > 2) { stack.pop(); } currentList = stack[stack.length - 1]; currentList.appendChild(listItem); stack.push(document.createElement('ul')); currentList = stack[stack.length - 1]; listItem.appendChild(currentList); } else if (tagName === 'H4') { while (stack.length > 3) { stack.pop(); } currentList = stack[stack.length - 1]; currentList.appendChild(listItem); } } }); // Remove any empty ul elements that might have been created function removeEmptyLists(list) { Array.from(list.children).forEach(item => { if (item.tagName === 'UL' && item.children.length === 0) { item.remove(); } else if (item.tagName === 'LI') { const childUl = item.querySelector('ul'); if (childUl) { removeEmptyLists(childUl); } } }); } removeEmptyLists(tocList); const tocTitle = document.createElement('h2'); tocTitle.textContent = 'Table of Contents'; tableOfContents.appendChild(tocTitle); tableOfContents.appendChild(tocList); }); </script>
Ce script génère automatiquement une table des matières imbriquée à partir des titres de l'élément principal, qui fonctionne de manière transparente. Le script remplit automatiquement la balise de table des matières que j'ai créée précédemment.
Enfin, j'ai ajouté la prise en charge des formules et des équations LaTeX en ajoutant ces balises de script et de lien à l'intérieur de la balise head.
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.16.4/dist/katex.min.css"> <script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.4/dist/katex.min.js"></script> <script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.4/dist/contrib/auto-render.min.js"></script> <script> document.addEventListener("DOMContentLoaded", function () { renderMathInElement(document.body, { delimiters: [ { left: "$", right: "$", display: false }, { left: "$$", right: "$$", display: true } ] }); }); </script>
Et avec ça, la page de contenu est terminée. J'aime le fait que le design soit très minimal, ne détourne pas l'attention du contenu et possède toujours toutes les fonctionnalités nécessaires.
Si vous voulez voir à quoi cela ressemble dans la version live, au lieu de simplement copier le contenu vous-même, voir ici : Périodicité des éléments - Questions et réponses
Je vais créer le fichier périodicité-of-elements-notes.html dans le dossier Chemistry/3/. Celui-ci contiendra les notes sur la périodicité des éléments.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Periodicity of Elements - Notes</title> <!-- styles and scripts --> </head> <body> <header> <nav> <div> <p>This is the same base HTML structure as the previous file, periodicity-of-elements-qa.html. </p> <p>Now, for the most time consuming part, copying over the massive text of the notes and formating it with headings, paragraphs, and lists. I've also used LaTeX syntax where appropriate.<br> </p> <pre class="brush:php;toolbar:false"> <h1> Structure of Periodic Table </h1> <h2> <p>I've added the base CSS from before, but I also added new CSS to style the calculator container, did I mention, this page also has a calculator, for interactivity:<br> </p> <pre class="brush:php;toolbar:false"> <style for="Calculator"> /* Light Mode Styles */ .calculator-container { background-color: #f5f5f5; /* Light background */ padding: 20px; border-radius: 8px; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Subtle shadow */ margin: 20px 0; } .calculator-controls { display: flex; gap: 10px; margin-bottom: 20px; } .calculator-controls input, .calculator-controls button { padding: 10px; border-radius: 4px; border: 1px solid #ccc; /* Light border */ background-color: #fff; /* White background */ color: #333; /* Dark text */ transition: background-color 0.3s ease, box-shadow 0.3s ease; /* Added box-shadow transition */ } .calculator-controls input:focus, .calculator-controls button:focus { outline: none; box-shadow: 0 0 5px #3498db; /* Focus highlight (same as dark mode) */ } .calculator-controls input { flex: 2; } .calculator-controls button { flex: 1; } .calculator-controls button:hover { background-color: #e0e0e0; /* Slightly darker on hover */ cursor: pointer; } #calculator-output { overflow-x: auto; } #calculator-output table { width: 100%; border-collapse: collapse; margin-top: 10px; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Subtle shadow */ } #calculator-output th, #calculator-output td { border: 1px solid #ccc; /* Light border */ padding: 8px; text-align: left; } #calculator-output th { background-color: #3498db; /* Header color (same as dark mode) */ color: white; } #calculator-output tr:nth-child(even) { background-color: #f0f0f0; /* Slightly darker for even rows */ } #calculator-output tr:hover { background-color: #e8e8e8; /* Slightly darker on hover */ } /* Loading Spinner */ .loading-spinner { border: 4px solid #ccc; /* Light border */ border-top: 4px solid #3498db; /* Spinner color (same as dark mode) */ border-radius: 50%; width: 30px; height: 30px; animation: spin 1s linear infinite; margin: 20px auto; display: none; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .calculator-container h2 { margin-top: 0; color: #333; /* Darker text color for heading */ } </style>
C'est un style très basique, mais ça va pour l'instant.
Ensuite, j'ai ajouté le JavaScript pour la table des matières comme avant, et ajouté un script pour générer la table des propriétés des éléments :
<script> document.addEventListener('DOMContentLoaded', fonction () { let elementInput = document.getElementById('element-input'); let calculateBtn = document.getElementById('calculate-btn'); let calculatorOutput = document.getElementById('calculator-output'); const élémentDonnées = { "H": { "Hfg_298_15K": -241,8, "Hfg_0K": -217,8, "Entropie_298_15K" : 130,7, "Integrated_Heat_Capacity_0_to_298_15K" : 25,7, "Heat_Capacity_298_15K": 28,8, "Electronic_Energy_Levels": [1216.5, 1025.7], "Ionisation_Energies" : 13.6, "Electron_Affinity": 0,75 }, "Il": { "Hfg_298_15K": 0, "Hfg_0K": 0, "Entropie_298_15K" : 126,1, "Integrated_Heat_Capacity_0_to_298_15K" : 20,8, "Heat_Capacity_298_15K": 20,8, "Electronic_Energy_Levels": [159850, 169084, 171133], "Ionisation_Energies" : 24.6, "Electron_Affinity": -0,08 }, "Li": { "Hfg_298_15K": 159,3, "Hfg_0K": 155,3, "Entropie_298_15K": 29.1, "Integrated_Heat_Capacity_0_to_298_15K" : 22,8, "Heat_Capacity_298_15K": 24,8, "Electronic_Energy_Levels": [14908, 17159], "Ionisation_Energies" : 5.39, "Electron_Affinity": 0,61 }, "Être": { "Hfg_298_15K": 324,3, "Hfg_0K": 315,3, "Entropie_298_15K" : 9,5, "Integrated_Heat_Capacity_0_to_298_15K" : 16,8, "Heat_Capacity_298_15K": 16,7, "Niveaux_d'énergie_électroniques": [21978, 38178], "Ionisation_Energies" : 9.32, "Electron_Affinity": -0,20 }, "B": { "Hfg_298_15K": 565, "Hfg_0K": 561,5, "Entropie_298_15K" : 5.9, "Integrated_Heat_Capacity_0_to_298_15K" : 11.1, "Heat_Capacity_298_15K": 11.1, "Electronic_Energy_Levels": [38144, 38178], "Ionisation_Energies" : 8h30, "Electron_Affinity": 0,28 }, "C": { "Hfg_298_15K": 716,7, "Hfg_0K": 711.2, "Entropie_298_15K" : 5.7, "Integrated_Heat_Capacity_0_to_298_15K" : 8,5, "Heat_Capacity_298_15K": 8,5, "Electronic_Energy_Levels": [10193, 21648], "Ionisation_Energies" : 11.3, "Electron_Affinity": 1.26 }, "N": { "Hfg_298_15K": 472,7, "Hfg_0K": 472,7, "Entropie_298_15K": 153,3, "Integrated_Heat_Capacity_0_to_298_15K" : 29.1, "Heat_Capacity_298_15K": 29.1, "Electronic_Energy_Levels": [19233, 28838], "Ionisation_Energies" : 14.5, "Electron_Affinity": -0,07 }, "O": { "Hfg_298_15K": 249,2, "Hfg_0K": 246,7, "Entropie_298_15K": 161.1, "Integrated_Heat_Capacity_0_to_298_15K" : 29,4, "Heat_Capacity_298_15K": 29,4, "Electronic_Energy_Levels": [15867, 22698], "Ionisation_Energies" : 13.6, "Electron_Affinity": 1,46 }, "F": { "Hfg_298_15K": 79,4, "Hfg_0K": 77,2, "Entropie_298_15K": 158,8, "Integrated_Heat_Capacity_0_to_298_15K" : 30,2, "Heat_Capacity_298_15K": 30,2, "Electronic_Energy_Levels": [404, 40889], "Ionisation_Energies" : 17.4, "Electron_Affinity": 3.40 }, "Ne": { "Hfg_298_15K": 0, "Hfg_0K": 0, "Entropie_298_15K": 146,3, "Integrated_Heat_Capacity_0_to_298_15K" : 20,8, "Heat_Capacity_298_15K": 20,8, "Electronic_Energy_Levels": [134041, 136541, 138892], "Ionisation_Energies" : 21.6, "Electron_Affinity": -0,08 }, "N / A":{ "Hfg_298_15K": 107,3, "Hfg_0K": 107,7, "Entropie_298_15K": 153,7, "Integrated_Heat_Capacity_0_to_298_15K" : 44,4, "Heat_Capacity_298_15K": 44,4, "Electronic_Energy_Levels": [16956, 17293], "Ionisation_Energies" : 5.14, "Electron_Affinity": 0,54 }, "Mg":{ "Hfg_298_15K": 147,7, "Hfg_0K": 146,2, "Entropie_298_15K" : 32,7, "Integrated_Heat_Capacity_0_to_298_15K" : 24,9, "Heat_Capacity_298_15K": 24,9, "Electronic_Energy_Levels": [24581, 30994], "Ionisation_Energies" : 7.65, "Electron_Affinity": -0,30 }, "A : { "Hfg_298_15K": 324,3, "Hfg_0K": 324,1, "Entropie_298_15K": 28.3, "Integrated_Heat_Capacity_0_to_298_15K" : 24,4, "Heat_Capacity_298_15K": 24,4, "Electronic_Energy_Levels": [25057, 33951], "Ionisation_Energies" : 5,99, "Electron_Affinity": 0,43 }, "Si":{ "Hfg_298_15K" : 450,0, "Hfg_0K": 447,6, "Entropie_298_15K" : 18,8, "Integrated_Heat_Capacity_0_to_298_15K" : 20.2, "Heat_Capacity_298_15K": 20.2, "Electronic_Energy_Levels": [6209, 14300], "Ionisation_Energies" : 8h15, "Electron_Affinity": 1.39 }, "P": { "Hfg_298_15K": 314,6, "Hfg_0K": 314,6, "Entropie_298_15K": 163,2, "Integrated_Heat_Capacity_0_to_298_15K" : 27,3, "Heat_Capacity_298_15K": 27,3, "Electronic_Energy_Levels": [11828, 19553], "Ionisation_Energies" : 10.5, "Electron_Affinity": 0,75 }, "S":{ "Hfg_298_15K": 278,3, "Hfg_0K": 275,2, "Entropie_298_15K": 167,7, "Integrated_Heat_Capacity_0_to_298_15K" : 29.2, "Heat_Capacity_298_15K": 29,2, "Niveaux_d'énergie_électroniques": [21394, 29394], "Ionisation_Energies" : 10.4, "Electron_Affinity": 2.08 }, "Cl ": { "Hfg_298_15K": 121,3, "Hfg_0K": 119,1, "Entropie_298_15K": 165,2, "Integrated_Heat_Capacity_0_to_298_15K" : 33,3, "Heat_Capacity_298_15K": 33,3, "Electronic_Energy_Levels": [882, 8823], "Ionisation_Energies" : 13.0, "Electron_Affinity": 3,62 }, "Ar": { "Hfg_298_15K": 0, "Hfg_0K": 0, "Entropie_298_15K": 154,8, "Integrated_Heat_Capacity_0_to_298_15K" : 20,8, "Heat_Capacity_298_15K": 20,8, "Electronic_Energy_Levels": [93144, 93751, 95282], "Ionisation_Energies" : 15.8, "Electron_Affinity": -0,08 }, "K":{ "Hfg_298_15K": 89,2, "Hfg_0K": 89,2, "Entropie_298_15K": 160,3, "Integrated_Heat_Capacity_0_to_298_15K" : 46,2, "Heat_Capacity_298_15K": 46,2, "Electronic_Energy_Levels": [12985, 13042], "Ionisation_Energies" : 4.34, "Electron_Affinity": 0,50 }, "Californie":{ "Hfg_298_15K": 178,2, "Hfg_0K": 177,3, "Entropie_298_15K": 41,6, "Integrated_Heat_Capacity_0_to_298_15K" : 25,9, "Heat_Capacity_298_15K": 25,9, "Electronic_Energy_Levels": [15315, 23652], "Ionisation_Energies" : 6.11, "Electron_Affinity": -0,02 }, "Sc":{ "Hfg_298_15K": 0, "Hfg_0K": 0, "Entropie_298_15K": 33.2, "Integrated_Heat_Capacity_0_to_298_15K" : 3,80, "Heat_Capacity_298_15K" : 25,52, "Electronic_Energy_Levels": [0, 11519.99], "Ionisation_Energies" : 6.561, "Electron_Affinity": 0,189 }, "Ti":{ "Hfg_298_15K" : 473,00, "Hfg_0K" : 470,00 , "Entropie_298_15K" : 180,30, "Integrated_Heat_Capacity_0_to_298_15K" : 7,54, "Heat_Capacity_298_15K": 24h43, "Electronic_Energy_Levels": [0, 170,132, 386,874, 6556,833, 6598,765, 6661,006, 6742,756, 6842,962, 7255,355, 8436,618, 8492,421, 8602.34], "Ionisation_Energies" : 6.828, "Electron_Affinity": 0,087 }, "Ti":{ "Hfg_298_15K" : 473,00, "Hfg_0K" : 470,00 , "Entropie_298_15K" : 180,30, "Integrated_Heat_Capacity_0_to_298_15K" : 7,54, "Heat_Capacity_298_15K": 24h43, "Electronic_Energy_Levels": [0, 170,132, 386,874, 6556,833, 6598,765, 6661,006, 6742,756, 6842,962, 7255,355, 8436,618, 8492,421, 8602.34], "Ionisation_Energies" : 6.828, "Electron_Affinity": 0,087 }, } ; calculateBtn.addEventListener('clic', function() { laissez selectedElement = elementInput.value.trim(); si (!selectedElement) { alert('Veuillez saisir un symbole d'élément.'); retour; }laissez normalizedElement = selectedElement.charAt(0).toUpperCase() selectedElement.slice(1).toLowerCase(); calculatorOutput.innerHTML = '<div> <p>J'ai ajouté beaucoup de contenu, ainsi que la logique pour générer dynamiquement la table des matières, et la logique pour calculer les valeurs de chaque élément, pour la calculatrice. Noah m'a demandé si je pouvais intégrer une calculatrice de base, pour les éléments et leurs rayons covalents et longueur de liaison. La page est maintenant prête ! Je veux le voir, c'est par ici :<br> Périodicité des éléments - Notes</p> <p>Cela marque la fin du codage de la journée. Je sais, c'est un peu précipité, parce que c'est le cas. Je ne pouvais pas décrire avec précision tout ce que je faisais et pourquoi, parce que je ne me souviens pas non plus de la plupart de ces choses. Je me souviens juste des changements fondamentaux.</p>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!