Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 如何在非CSS3浏览器上创建圆角?_Html_Css - Fatal编程技术网

Html 如何在非CSS3浏览器上创建圆角?

Html 如何在非CSS3浏览器上创建圆角?,html,css,Html,Css,我知道在这种情况下我必须使用图像,每个角一个 例如,如果我需要一个蓝色的4px边框,在给定元素周围有8px的边框半径, 我据此设计了四幅图像 左上角.png 右上角.png 左下角.png 右下角.png 如果可能的话,我应该如何实现这一点而不使用表?您试过了吗?在这种情况下,你不必使用图像…谷歌上有这么多链接,只需键入圆角css,你应该会找到一些帮助。较老的技术涉及到在框的上方和下方使用一组b标记,您希望对其进行四舍五入并计算边距以生成所需的半径,但这涉及到一点,并且有更好的抗锯齿解决方案

我知道在这种情况下我必须使用图像,每个角一个

例如,如果我需要一个蓝色的4px边框,在给定元素周围有8px的边框半径, 我据此设计了四幅图像

  • 左上角.png
  • 右上角.png
  • 左下角.png
  • 右下角.png

如果可能的话,我应该如何实现这一点而不使用表?

您试过了吗?在这种情况下,你不必使用图像…

谷歌上有这么多链接,只需键入圆角css,你应该会找到一些帮助。较老的技术涉及到在框的上方和下方使用一组b标记,您希望对其进行四舍五入并计算边距以生成所需的半径,但这涉及到一点,并且有更好的抗锯齿解决方案可用。

我不会使用其他人在这里建议的css解决方法/技巧,我会继续使用图像。是的,它的设置更为精细,但它是跨浏览器和健壮的。我已经尝试了许多css解决方法,发现它们最多只能是不可预测的。它们可能在某些IE安装上运行良好,但在其他IE安装上则不行(例如完全破坏浏览器)。更糟糕的是,我们无法找出为什么它在某些安装上运行良好,而在其他安装上运行不好(这是针对同一IE版本的)

我要么:在IE上不使用弯曲的角落,要么使用图像。可以使用嵌套的div:

<div class="top-left">
   <div class="top-right">
       <div class="bottom-left">
          <div class="bottom-right">

             ... content ...
          </div>
       </div> 
    <div>
 </div>
并为其中一个div设置边框样式,例如:

border: 4px solid #f00;

如果您允许使用表格和一些代码,则无需图像即可完成此操作,并且可以轻松切换颜色:


从长远来看,使用图像将使生活更加艰难,将其保留在css中意味着您可以更轻松地处理设计更改并保持其可访问性:)+1谢谢,非常有趣的资源!我不知道这件事。它不需要图像来制作圆角,这是一个很大的优势!但它只是IE,需要用户安全设置允许.htc文件。你不应该为此烦恼。IE用户可以在没有圆角的情况下生活。嗯,是的,主要是IE,但可能还有一些不太知名的浏览器。谢谢你的经验,没有什么比破坏用户的浏览器更糟糕的了!我认为使用嵌套div是一个聪明的想法-也许它在语义上不正确,但它看起来确实可靠,并且仍然符合css。@Luc1245-嵌套divs基本上是在css3之前一直使用的方法。我已经尝试过了,它可以很好地处理不透明图像。但在我的例子中,我可以看到一个圆形边框加上每个角落的方形边框;我使用的图像的像素都是透明的,除了那些构成角点曲线的像素,这样,如果基础父元素的背景颜色发生变化,我就不必制作不同的图像集。请问,在这种情况下你有解决方案吗?@Luc1245-是的,它不适用于有透明度的图像。您必须将图像背景设置为与页面相同。当你需要改变图片时,如果你改变了页面背景颜色,这是一种痛苦,但不幸的是,这是你必须做的。好吧,没有别的办法了。很好的链接,你可以生成盒子图片并下载它们,而不必自己设计好工具!我将在允许表格的情况下使用它(以及角落中的一些跨距)。很高兴我可以动态改变颜色。你的生成器有很多选项,但我没有找到像“边框宽度”或“边框颜色”这样的选项。我可以像css边框半径那样用它来制作圆角和圆角吗?
border: 4px solid #f00;