HTML转JSX/TSX工具 - 替换核心属性
将普通HTML片段一键转为React可用的JSX,处理class→className、style等。
UD5工具箱
将 HTML 代码快速转换为 React JSX 格式,自动处理 className、style 对象、事件驼峰等
class → className(因为 class 是 JavaScript 保留字)for → htmlFor(label 的 for 属性)style="color:red;font-size:14px" 转为对象 style={{color:'red',fontSize:'14px'}}onclick → onClick,onchange → onChange 等<br> → <br />,<img src="..."> → <img src="..." /><!-- ... --> → {/* ... */}tabindex → tabIndex,readonly → readOnly 等
React.createElement() 调用。由于 class 是 JavaScript 的保留关键字(用于定义类),直接在 JSX 中使用会造成语法冲突。因此 React 团队采用了 className 作为替代。同样地,for 也是保留关键字(用于循环),所以在 JSX 中 label 元素使用 htmlFor。
style={{color: 'red', fontSize: '14px'}} 的双大括号其实包含两层含义:{} 表示"这是 JavaScript 表达式"(JSX 语法){} 表示"这是一个 JavaScript 对象字面量"style="color:red" 的字符串形式完全不同。CSS 属性名需要转为驼峰命名(如 font-size → fontSize),数值型值如 12px 需要加引号变成字符串。
<area />、<base />、<br />、<col />、<embed />、<hr />、<img />、<input />、<link />、<meta />、<param />、<source />、<track />、<wbr />/> 结尾。
{} 包裹),而非字符串:| HTML | JSX |
|---|---|
onclick="handle()" | onClick={handle} |
onchange="..." | onChange={...} |
onsubmit="..." | onSubmit={...} |
onkeydown="..." | onKeyDown={...} |
onfocus="..." | onFocus={...} |
onmouseover="..." | onMouseOver={...} |
onClick={handleClick()})的值需要是函数引用,而非字符串。工具会转换属性名,但值需要您手动调整。<script> 标签,在 JSX 中通常不可直接用,需要移除或使用 dangerouslySetInnerHTML。{{ }} 或 Angular 的 *ngIf)不在本工具转换范围内,需手动改为 React 的 JSX 表达式。font-size → 必须写为 fontSizebackground-color → backgroundColormargin-top → marginTopwidth: '100px'(不能写 width: 100,除非该属性默认单位是 px)WebkitTransition、MozTransformclass → className 等常规替换。html-to-react-components)进行自动化迁移。将普通HTML片段一键转为React可用的JSX,处理class→className、style等。
粘贴PHP print_r或var_export输出,智能解析为有效的JSON。
粘贴网页上的 HTML 表格代码,自动提取数据并转换为 JSON 或 CSV 格式下载。
提取HTML中内联style属性或嵌入式style标签,转变为独立CSS规则,辅助样式重构。
将 JSON 数组或对象渲染为可交互的 HTML 表格,支持嵌套展开、列排序和搜索。
配置内容和位置,生成使用最新HTML popover属性的轻量弹窗代码,无需JavaScript。
选择背景图片(或使用占位色),配置标题、副标题和按钮,生成Hero区域代码。
选择触发位置、箭头方向与样式,生成轻量悬停提示框代码。
勾选或调整所需的重置元素(盒模型、边距等),生成自定义CSS Reset片段,确保跨浏览器一致性。
批量将文本中的<,>,&,等转换为HTML实体,或反向还原,包含选项保留已转义实体。
粘贴JSON对象,生成可折叠的树形视图,点击节点复制其键值路径,方便调试。
粘贴HTML并编写XPath表达式,高亮显示匹配的节点并提取文本。
添加层级名称与链接,自动生成带Schema结构化的面包屑导航条。
粘贴HTML表格代码或从网页抓取,自动识别行列并转换为CSV格式,方便导入Excel。
提取HTML中所有内嵌 `<style>` 标签的内容,合并生成单独CSS文件。
编写JavaScript代码,自动转换为可直接拖拽至书签栏的Bookmarklet链接。
拖拽顶点或选择预定义形状,可视生成CSS clip-path多边形、圆形、椭圆等,实时预览并复制代码。
并列播放所有CSS内置缓动函数(ease, linear等)的动画效果,方便对比选择。
粘贴HTML和基本CSS,分析渲染后视觉顺序与DOM顺序的差异,避免可访问性问题。
在线生成可折叠的手风琴面板,自定义标题、内容与图标,支持纯CSS或简单JS切换。
粘贴结构化数据代码,模拟Google结构化数据测试,检查错误与丰富结果。
通过滑块和开关调整 Flex 容器和子项的所有 CSS 属性,实时观察布局变化,理解弹性盒子。
在浏览器中即时测试for、forEach、map、for-of等循环的执行速度,帮助选择最优写法。
配置多个背景层或前景层,设定各层滚动速度因子,生成完整视差页面代码。
配置多屏垂直或水平滑动卡片,生成带CSS Scroll Snap的HTML页面代码。
设定物理页框数,输入页引用串,动画展示不同页面置换算法的缺页率。
加载Lottie动画JSON文件,播放并控制速度、方向,预览动效效果。
输入 HTML 或网址,提取所有标题标签,生成文档大纲树,检测跳跃和缺失。
粘贴带参数的URL,以表格形式列出所有Query参数与值。
编写带有伪类的选择器,实时高亮匹配的HTML元素,探索现代CSS选择器的能力。