Я использую position:absolute;, теперь я хочу установить ширину автоматически (в соответствии с содержимым), но из-за position:absolute; я не могу width:auto;
$('.wishlistMessage').text('Your product added to wishlist')
$('.wishlistMessage').show();
.wishlistMessage{position: fixed;
bottom: 25px;
left: 0;
right: 0;
margin-left: auto;
margin-right: auto;
background: rgba(0, 0, 0, 0.8);
color: #fff;
padding: 12px 25px;
display: inline;
width: auto;
text-align: center;
border-radius: 5px;
z-index: 10000;
}<script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class = "wishlistMessage">Your product added to wishlist</div>





Элемент с position: absolute будет соответствовать размеру содержимого. Поскольку вы используете left: 0 и right: 0, элемент растягивается в обе стороны. Удаление одного из них (я удалил правый) решило бы проблему:
$('.wishlistMessage').text('Your product added to wishlist')
$('.wishlistMessage').show();.wishlistMessage {
position: fixed;
bottom: 25px;
left: 50%;
transform: translateX(-50%);
background: rgba(0, 0, 0, 0.8);
color: #fff;
padding: 12px 25px;
text-align: center;
border-radius: 5px;
z-index: 10000;
}<script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class = "wishlistMessage">Your product added to wishlist</div>
Вы показали часть своего кода с фиксированной позицией. Можете ли вы показать соответствующую часть кода?