So far most of the experiments in here have been pretty small and self-contained, and I’ve left markdown docs around the place to summarise findings. And sometimes while figuring things out I’ve also added brief-ish trains of thought. Some experiments are starting to get more involved though and will need better tracking, so setting this folder up like I’ve done in other projects.
Won’t do branch-merge-release here though - this project will stay all trunk development - so ‘done’ tasks will probably end up grouped by date. When html-common gets into release cadence some tasks will be moved over to there.
svg a way to get the box coordinates of the visible svg render area, not just the viewboxhtml,css review viewport terminology for visible, hidden areas et alcss @supports condition for newer functions like sibling-index() – try some of the ideas here: https://stackoverflow.com/questions/77441227/how-to-detect-css-functions-support like CSS.supports()svg Dig a limit more into stroke-miterlimitapi Return to web-components and Temporaldom Refresher: document.querySelector vs getElementById - they return different types/interfaces i think & the former is easier to castjs modules: a way to export “*” ? (I don’t think this can be done)js identifiers: unicode categories ID_Start & ID_Continuecss generated content: can any items be made conditional? Also see if there are any implementations for the “six yet-to-be implemented CSS functions including content(), string(), and leader(), and the three target functions”css “Layout was forced before the page was fully loaded. If stylesheets are not yet loaded this may cause a flash of unstyled content.”js “This expression is not constructable. Type ‘….’ has no construct signatures.ts(2351)”js Derived subclass as function parameter?jsdoc,ts Correct typing for HTMLFormElement.elements / HTMLFormControlsCollection itemsjsdoc,ts correct type for a dynamically imported modulejsdoc,ts partial typing - see if there are ways to declare generic types that only specify certain items of a type signature, eg just the return type of a function - and be able to mix these partials together a bit like interfaces
css colour model/api etccss dynamic/automatic/contextual colours for textcss Parent selector - ‘has’css See if there’s a way to collapse the single extra spaces that sometimes get added just from formatting, eg <h1> <a ...css grid is there a simple way to make grid items go full-width without knowing the column count?css grid dynamic grids in general - eg based on custom varsdom 3d transform experimentshtml details/summary move the marker to the right<script></script> tags within htmlFound some references to this and some open vscode issues that look related:
css style selected option elements with :checked pseudo class, not selected attr. Obviously.file have v.basic downloads going now; some examples in turtle, screensaver, thoughtcloudcss animation experiments mostly being done in screensaver for nowsvg The ~5 extra vertical pixels that SVG in html gets displayed with are related to its default display:inline. Still investigating, but change to display:block for a quick soln.storage Github pages localStorage is shared based upon common originsvg SVG foreignObject - https://developer.mozilla.org/en-US/docs/Web/SVG/Reference/Element/foreignObjectkbd filter out browser/os crtl key comboscss list counters, zero-based: can be done (though a little quirky); better to use array keys themselves when that’s what’s neededtesting simple code testing eg equality, exceptions, typeof testing that code excepts - moved to html-commonjs Function arguments can be omitted to accept defaults with undefinedcss grey is darker than darkgrey for historical reasons - websearch for the whole storythis for chainingsetCoord(x,y) { this.x = x; this.y = y; return this; }
A ‘set’ accessor must have exactly one parameter.ts(1049) Setters cannot return a value.ts(2408)
Stock js setters can only have one param, and cannot return anything so they can’t be chained.
In some places I’m writing custom setters that accept more parameters, and return this to allow for chaining.
I’m not sure if i want to go boots-and-all with this yet, but trying it out in a few spots; makes some testing code a bit easier for example.