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

如何为Adyen自定义卡片输入框(iframe内)添加CSS伪类样式

解决Adyen自定义卡片输入框:focus伪类样式修改问题
  • 通过AdyenCheckout的styles配置嵌套伪类选择器
    Adyen的styles配置支持深层嵌套的CSS选择器,你可以直接在input样式下定义:focus和:hover状态的样式,示例代码如下:
const checkout = new AdyenCheckout({
  // 你的其他配置(如clientKey、environment等)
  styles: {
    card: {
      input: {
        // 基础样式可选
        border: '1px solid #ccc',
        // 聚焦状态修改outline
        ':focus': {
          outline: '2px solid #0066cc'
        },
        // 可选:hover状态样式
        ':hover': {
          borderColor: '#0066cc'
        }
      }
    }
  }
});
  • 跨iframe注入自定义样式(仅限同域场景)
    如果上述配置不生效,且你的自定义组件iframe与父页面同域,可以通过动态注入样式表的方式修改伪类样式:
// 获取卡片组件对应的iframe
const cardIframe = document.querySelector('[data-adyen="card"] iframe');
if (cardIframe) {
  cardIframe.onload = () => {
    const customStyle = document.createElement('style');
    customStyle.textContent = `
      input:focus {
        outline: 2px solid #0066cc !important;
      }
      input:hover {
        border-color: #0066cc !important;
      }
    `;
    cardIframe.contentDocument.head.appendChild(customStyle);
  };
}

注意:如果是Adyen托管的iframe(跨域),无法使用第二种方法,必须依赖第一种styles配置方案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 13:33:16