@hrm, you could also do it like this (slightly simpler):
include karax / prelude
import karax/[vstyles]
var mystyle = style({StyleAttr.transform: "translateX(10px)".kstring})
var t: string = "For many years, computer programmers have been"
proc mainHtml(): VNode =
result = buildHtml(main(id="main", class="main", style = mystyle )):
text t
proc onclick(ev: Event, n: VNode) =
t = "callback is triggered well...."
mystyle = style({StyleAttr.transform: "translateX(150px)".kstring})
proc main(): VNode =
return buildHtml(tdiv):mainHtml()
setRenderer main
Run