background-image:url(data:image/gif;base64,XXXX)

background-image:url(data:image/gif;base64,R0lGODlhCwAMAMZjAElxvlNvtVRxtkp1v0p9wVh7vkqBwl58vml6vml7vm19qHJ+qXSBwXiAwHWBv2eFxk+QzHCJx36HwlCUzoKJw3eNyluY1XuQy1Od1lSh2FWi22qe14uaz4ybz2Sn3ZKdxJKeyZWexI+k1ZilznCv4XOw4Y2u1Xuz4Xe05H2z4JKv1aKs0qSs1Kas1H245oS76Iy63o2637S1wI696Yu+6Yy+6Y2/6Y/B6o/C6ry8vJrD68DAwJ3H7J3I7JvJ7p3J7p7J8aXK66DL8KHL76LL7arJ7q/M76zO7azT9c/Pz6/W+LHW+LLY+rrX8b3X77vY8b7Z8sPa8Mrd7snf8svg883h9M/h8MHk/8Hl/8To/9nn9dvp9d7q98/y/dDy/ezw+Ozx+Nj7//L3+yH5BAEKAH8ALAAAAAALAAwAAAd4gH+CSTs5O0mCiTIfHCIdITKJORVFXWFeRhc5gg8zSlhZV0w6EX8KFi9ASEtIQjYbCwUaKDc/Qz44Lh4HABgkND1EPDUlGQMBECdHT1BNQSkTAiAEMVFUVVNOMAYgfwgmVltcWlIqCYkMI2BiXysOiYIsEg0ULYmBADs%3D)

 

新写法,减少Http请求数,高版本浏览器才支持!

http://www.vgot.net/test/image2base64.php  图片和编码来回瞎转!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
抱歉,我之前的回答中有误导。在 `<option>` 元素上应用 CSS 样式,尤其是背景图像,是不可靠的,因为不同浏览器对于 `<option>` 元素的渲染方式存在差异,有些浏览器可能不支持背景图像。 为了在下拉列表中显示带有图片的选项,你可能需要使用自定义的下拉列表插件或使用其他的解决方案,例如使用自定义的HTML和CSS模拟下拉列表的外观,并通过JavaScript来处理选项的选择和图片的显示。 以下是一个使用自定义HTML、CSS和JavaScript来实现下拉列表中显示带有图片的选项的示例代码: ```html <div class="custom-select"> <div class="select-selected">Option 1</div> <div class="select-options"> <div data-value="option1" data-image="path/to/image1.jpg">Option 1</div> <div data-value="option2" data-image="path/to/image2.jpg">Option 2</div> <div data-value="option3" data-image="path/to/image3.jpg">Option 3</div> </div> </div> ``` ```css .custom-select { position: relative; width: 200px; } .select-selected { background-color: #f2f2f2; padding: 5px; } .select-selected::after { content: ""; position: absolute; top: 50%; right: 10px; transform: translateY(-50%); width: 10px; height: 10px; border-left: 2px solid; border-bottom: 2px solid; border-color: #888; transition: all 0.3s ease-in-out; } .select-selected.open::after { transform: translateY(-50%) rotate(45deg); } .select-options { position: absolute; top: 100%; left: 0; background-color: #fff; border: 1px solid #ccc; display: none; } .select-options.open { display: block; } .select-options div { padding: 5px; } .select-options div:hover { background-color: #f2f2f2; } .select-options div[data-image] { padding-left: 30px; background-repeat: no-repeat; background-position: left center; } .select-options div[data-image]::before { content: ""; display: inline-block; width: 20px; height: 20px; background-size: cover; background-repeat: no-repeat; background-position: center center; } ``` ```javascript document.addEventListener("DOMContentLoaded", function() { var customSelect = document.querySelector(".custom-select"); var selectedOption = customSelect.querySelector(".select-selected"); var optionsList = customSelect.querySelector(".select-options"); selectedOption.addEventListener("click", function() { customSelect.classList.toggle("open"); optionsList.classList.toggle("open"); }); optionsList.addEventListener("click", function(e) { var selectedValue = e.target.getAttribute("data-value"); var selectedText = e.target.textContent; var selectedImage = e.target.getAttribute("data-image"); selectedOption.textContent = selectedText; // 处理图片显示 if (selectedImage) { var imageElement = document.createElement("div"); imageElement.style.backgroundImage = "url('" + selectedImage + "')"; selectedOption.insertBefore(imageElement, selectedOption.firstChild); } else { selectedOption.removeChild(selectedOption.firstChild); } // 更新选中的值 selectedOption.setAttribute("data-value", selectedValue); customSelect.classList.remove("open"); optionsList.classList.remove("open"); }); document.addEventListener("click", function(e) { if (!customSelect.contains(e.target)) { customSelect.classList.remove("open"); optionsList.classList.remove("open"); } }); }); ``` 这段代码创建了一个自定义的下拉列表,通过使用自定义的HTML、CSS和JavaScript来模拟下拉列表的外观和行为。当选择一个选项时,会更新显示的文本和图片,并通过 `data-value` 属性来存储选项的值。 请注意,这只是一个示例实现,并且可能需要根据你的具体需求进行修改和调整。同时,为了使图片正确显示,你需要将 `path/to/image.jpg` 替换为你实际的图片路径。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值