calc() 值中的 calc() 值
A calc() value within a calc() value
假设我正在创建一个图片库;在一定的设备宽度下,将有三张图片,因此,我需要算出三分之一:
{width:calc(100% / 3)}
但是,问题是我需要去掉“2px”(两个像素)- 我添加了 1px 的边距,因此需要通过将其从宽度中去掉来解决,因此我需要做:
{width:calc(calc(100% / 3) - 2px)}
但是,这行不通:有什么办法可以做到这一点吗?
[我需要算出三分之一,然后从中减去两个像素——这很乱,因为很难将三分之一格式化为百分比。]
为了完整起见,我将在这里添加一个答案(解决方案已发布在提问者问题下方的评论中)。
您不需要使用两个 calc()
语句。将计算组合在一个 calc()
语句中就足够了。在这种情况下,正如 Andrea Ghidini 在评论中提到的(参考 this link),除法将优先于减法(基本数学规则适用!)。
所以你的解决方案是:
width:calc(100% / 3 - 2px)
另外,一定要保证加减法的两边是空格,否则不行!
假设我正在创建一个图片库;在一定的设备宽度下,将有三张图片,因此,我需要算出三分之一:
{width:calc(100% / 3)}
但是,问题是我需要去掉“2px”(两个像素)- 我添加了 1px 的边距,因此需要通过将其从宽度中去掉来解决,因此我需要做:
{width:calc(calc(100% / 3) - 2px)}
但是,这行不通:有什么办法可以做到这一点吗?
[我需要算出三分之一,然后从中减去两个像素——这很乱,因为很难将三分之一格式化为百分比。]
为了完整起见,我将在这里添加一个答案(解决方案已发布在提问者问题下方的评论中)。
您不需要使用两个 calc()
语句。将计算组合在一个 calc()
语句中就足够了。在这种情况下,正如 Andrea Ghidini 在评论中提到的(参考 this link),除法将优先于减法(基本数学规则适用!)。
所以你的解决方案是:
width:calc(100% / 3 - 2px)
另外,一定要保证加减法的两边是空格,否则不行!