function setStorageData(key, data) {
localStorage.setItem(key, JSON.stringify(data));
}
function getStorageData(key, defaultValue = []) {
return JSON.parse(localStorage.getItem(key)) ?? defaultValue;
}
<div class="grid">
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
...
</div>
.grid {
display: grid;
grid-template-columns: 1fr 1fr;
}
.item:nth-child(3n + 3) {
grid-column: span 2;
}
use App\Http\Controllers\PageContactController;
Route::get('/contakt', [PageContactController::class, 'index']);
background-clip: content-box; // контент
background-clip: padding-box; // контент + отступ
background-clip: border-box; // По умолчанию: контент + отступ + рамка
self.classList.toggle('open');
const control = self.querySelector('.accordion__control');
const content = self.querySelector('.accordion__content');
.accordion__tittle.open
, а получаете вы .accordion__control
.// В браузере норм сработает и с пробелами. Просто оберните в тег ссылки.
$txtphone = trim($_POST['phone']);
$txtphone = "<a href='tel:$txtphone'>$txtphone</a>";
// Для телеги вырежьте все, кроме цифр
$phone = strip_tags($_POST['phone']);
$phone = preg_replace('/\D/', '', $phone);
$phone = '+'.$phone; // Плюсик вернем.