You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Racket中为生成的HTML表格添加边框

解决方案

Racket的S表达式转HTML的规则中,标签属性需要单独放在标签名后的第一个子列表中,属性以(属性名 属性值字符串)的格式定义:

  1. 基础边框实现(使用HTML原生border属性)
(list 'table '((border "1"))
      (list 'tr 
            (list 'th "Key")
            (list 'th "Value"))
      (list 'tr
            (list 'td "A")
            (list 'td "Blue"))
      (list 'tr
            (list 'td "B")
            (list 'td "Gold")))
  1. 自定义样式边框实现(可调整边框样式、颜色、粗细)
    如果需要实线黑色边框且避免双层边框,使用style属性定义样式,同时给单元格也添加边框:
(list 'table '((style "border: 1px solid black; border-collapse: collapse;"))
      (list 'tr 
            (list 'th '((style "border: 1px solid black; padding: 4px;")) "Key")
            (list 'th '((style "border: 1px solid black; padding: 4px;")) "Value"))
      (list 'tr
            (list 'td '((style "border: 1px solid black; padding: 4px;")) "A")
            (list 'td '((style "border: 1px solid black; padding: 4px;")) "Blue"))
      (list 'tr
            (list 'td '((style "border: 1px solid black; padding: 4px;")) "B")
            (list 'td '((style "border: 1px solid black; padding: 4px;")) "Gold")))

错误原因说明

你之前的写法没有将border相关属性放到专门的属性列表中,而是直接和标签子元素平级放置,Racket的HTML生成逻辑无法识别这类内容为标签属性,因此不会生效。

内容的提问来源于stack exchange,提问作者thatOneGuy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 01:54:03