Merhaba hocalarım sizden ufak bir yardım rica ediyorum.
Şimdi ben flexbox kullanarak bilgisayar versiyonu için her rowda 3 column olacak şekilde bir blog sayfası oluşturmak istiyorum.
Fakat şöyle bir problem var;
1- Column-gap: 15px; (gap: 45px 15px) yaptığımda column sayısı 2 oluyor ve sonra flex-basis: calc(33.3% - 15px); ayarladğımda ise en sağda 15px boşluk kalıyor.
2- Farklı bir yöntem olarak column-gap özelliği yerine article classına margin-right: 15px ekledğimde, flex-basis: calc(33.3% - 15px); yaptığımda ve article:last-child için margin-right: 0 olarak ayarladığımda 1. rowun en sağı yani article-3 ten silmek yerine article-4 ten 15pc siliyor.




general.css

@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,600;0,700;0,800;0,900;1,600;1,700;1,800;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Titillium+Web:wght@300;400;500;600;700;800;900&display=swap');
* {
    margin: 0;
    padding: 0;
}
:root {
    --primary-font: 'Titillium Web', sans-serif; /* for headings */                          
    --secondary-font: 'Titillium Web', sans-serif;
    --color-1: #1E1E1E;
    --color-2: #FF8B13;
    --color-3: #CCCCCC;
}
h1, h2, h3, h4, h5, h6 {
    font-family: var(--primary-font);
    line-height: .9;
}
h2 {
    font-weight: 600;
}
h3, h4 {
    font-weight: 500;
}
p {
    font-family: var(--secondary-font);
    font-size: 20px;
    line-height: 1.2rem;
    margin: 15px 0;
}
b {
    font-family: var(--secondary-font);
    font-size: 20px;
    font-weight: 600;
    line-height: 1.2;
}
button {
    font-family: var(--secondary-font);
    font-size: 15px;
}
blog.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Blog</title>
    <link rel="stylesheet" href="general.css">
    <link rel="stylesheet" href="blog.css">
</head>
<body>
    <div class="container">
        <div class="articles">
        
            <div class="article" id="article-1">
                <img src="images/pexels-miguel-á-padriñán-1591056 (1) (1).jpg" alt="article-1" id="article-1-img">
                <h2>This's An Example Blog Post</h2>
                <p>It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout.</p>
                <button class="incele-button">İncele</button>
            </div>
    
            <div class="article" id="article-2">
                <img src="images/pexels-miguel-á-padriñán-1591056 (1) (1).jpg" alt="article-1" id="article-2-img">
                <h2>This's An Example Blog Post</h2>
                <p>It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout.</p>
                <button class="incele-button">İncele</button>
            </div>
            <div class="article" id="article-3">
                <img src="images/pexels-miguel-á-padriñán-1591056 (1) (1).jpg" alt="article-1" id="article-3-img">
                <h2>This's An Example Blog Post</h2>
                <p>It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout.</p>
                <button class="incele-button">İncele</button>
            </div>
            
            <div class="article" id="article-4">
                <img src="images/pexels-miguel-á-padriñán-1591056 (1) (1).jpg" alt="article-1" id="article-3-img">
                <h2>This's An Example Blog Post</h2>
                <p>It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout.</p>
                <button class="incele-button">İncele</button>
            </div>
        </div>
    </div>
    
</body>
</html>
blog.css

.container {
    padding: 100px 10%;
}
.articles {
    display: flex;
    flex-wrap: wrap;
    gap: 45px 15px;
}
.article {
    flex-basis: 33.33%;
}

#article-1-img, #article-2-img, #article-3-img, #article-4-img {
    height: auto;
    width: 100%;
    margin-bottom: 15px;
}
.incele-button {
    background-color: var(--color-1);
    color: white;
    cursor: pointer;
    border: none;
    padding: 15px 30px;
}
.incele-button:hover {
    background-color: var(--color-2);
}