Back to Tailwindcss

Filter Contrast

src/docs/filter-contrast.mdx

latest4.2 KB
Original Source

import { ApiTable } from "@/components/api-table.tsx"; import { Example } from "@/components/example.tsx"; import { Figure } from "@/components/figure.tsx"; import { UsingACustomValue, ResponsiveDesign } from "@/components/content.tsx";

export const title = "filter: contrast()"; export const description = "Utilities for applying contrast filters to an element.";

<ApiTable rows={[ ["contrast-<number>", "filter: contrast(<number>%);"], ["contrast-(<custom-property>)", "filter: contrast(var(<custom-property>));"], ["contrast-[<value>]", "filter: contrast(<value>);"], ]} />

Examples

Basic example

Use utilities like contrast-50 and contrast-100 to control an element's contrast:

<Figure> <Example padding={false}> { <div className="flex scroll-p-8 justify-start overflow-scroll sm:block sm:overflow-visible"> <div className="flex shrink-0 items-center justify-around gap-6 p-8 font-mono font-bold sm:gap-4"> <div className="flex shrink-0 flex-col items-center"> <p className="mb-3 text-center font-mono text-xs font-medium text-gray-500 dark:text-gray-400">contrast-50</p> <div className="relative contrast-50">
        <div className="absolute inset-0 rounded-lg ring-1 ring-black/10 ring-inset"></div>
      </div>
    </div>
    <div className="flex shrink-0 flex-col items-center">
      <p className="mb-3 text-center font-mono text-xs font-medium text-gray-500 dark:text-gray-400">
        contrast-100
      </p>
      <div className="relative contrast-100">
        
        <div className="absolute inset-0 rounded-lg ring-1 ring-black/10 ring-inset"></div>
      </div>
    </div>
    <div className="flex shrink-0 flex-col items-center">
      <p className="mb-3 text-center font-mono text-xs font-medium text-gray-500 dark:text-gray-400">
        contrast-125
      </p>
      <div className="relative contrast-125">
        
        <div className="absolute inset-0 rounded-lg ring-1 ring-black/10 ring-inset"></div>
      </div>
    </div>
    <div className="flex shrink-0 flex-col items-center">
      <p className="mb-3 text-center font-mono text-xs font-medium text-gray-500 dark:text-gray-400">
        contrast-200
      </p>
      <div className="relative contrast-200">
        
        <div className="absolute inset-0 rounded-lg ring-1 ring-black/10 ring-inset"></div>
      </div>
    </div>
  </div>
</div>

} </Example>

html
<!-- [!code classes:contrast-50,contrast-100,contrast-125,contrast-200] -->




</Figure>

Using a custom value

<UsingACustomValue element="img" elementAttributes={{ src: "/img/mountains.jpg" }} utility="contrast" value=".25" />

Responsive design

<ResponsiveDesign element="img" elementAttributes={{ src: "/img/mountains.jpg" }} property="filter: contrast()" defaultClass="contrast-125" featuredClass="contrast-150" />