Для решения этой задачи можно использовать SVG `<pattern>`, `<rect>` и JavaScript.
1. Создадим SVG элемент с паттерном, описывающим закраску квадратов различными цветами:
```html
<svg width="100" height="100">
<defs>
<pattern id="pattern" width="10" height="10" patternUnits="userSpaceOnUse">
<rect width="10" height="10" fill="red"/>
</pattern>
</defs>
</svg>
```
2. Затем создадим квадраты, которые будут закрашены данным паттерном:
```html
<svg width="150" height="150">
<rect x="10" y="10" width="30" height="30" fill="url(#pattern)"/>
<rect x="50" y="10" width="30" height="30" fill="url(#pattern)"/>
<rect x="90" y="10" width="30" height="30" fill="url(#pattern)"/>
</svg>
```
3. Чтобы сделать процесс более динамичным и случайным с помощью JavaScript, можно использовать следующий код:
```javascript
const colors = ['red', 'blue', 'yellow'];
document.querySelectorAll('rect').forEach(rect => {
const randomColor = colors[Math.floor(Math.random() * colors.length)];
rect.setAttribute('fill', randomColor);
});
```
Этот скрипт случайным образом выбирает один из трех цветов и назначает его каждому квадрату.
Таким образом, можно использовать SVG `<pattern>` и JavaScript, чтобы закрасить квадраты различными цветами, делая процесс динамичным и ультра-элегантным.