Creating a Custom Camera Preview Overlay with Ionic & Capacitor - ionic-framework

I am trying to create custom camera with overlay. I have tried https://www.youtube.com/watch?v=JA8k738i9jQ&t=385s tutorial. Actually this tutorials output i needed. But when i click on the open camera it's opening native camera instead the in app camera. Am i doing anything wrong. this is my code. Thanks in advance.
camera.ts
import { Component, OnInit } from '#angular/core';
import { Plugins } from '#capacitor/core';
const { CameraPreview } = Plugins
import { CameraPreviewOptions, CameraPreviewPictureOptions } from '#capacitor-community/camera-preview';
#Component({
selector: 'app-camera',
templateUrl: './camera.page.html',
styleUrls: ['./camera.page.scss'],
})
export class CameraPage implements OnInit {
image = null;
cameraActive = false;
constructor() { }
ngOnInit() {
}
openCamera() {
const cameraPreviewOptions: CameraPreviewOptions = {
position: 'rear',
parent: "cameraPreview",
className: "cameraPreview"
};
CameraPreview.start(cameraPreviewOptions);
this.cameraActive = true;
}
async stopCamera() {
await CameraPreview.stop();
this.cameraActive = false;
}
async captureImage() {
const CameraPreviewPictureOptions: CameraPreviewPictureOptions = {
quality: 90
}
const result = await CameraPreview.capture(CameraPreviewPictureOptions)
this.image = `data:image/jpeg;base64, $(result.value)`
this.stopCamera()
}
flipCamera() {
CameraPreview.flip()
}
}
camera.html
<ion-header>
<ion-toolbar>
<ion-title>camera</ion-title>
</ion-toolbar>
</ion-header>
<ion-content>
<div id="cameraPreview" class="cameraPreview">
<div *ngIf="cameraActive">
<img src="assets/icon/guide.png" class="image-overlay">
<ion-button (click)="stopCamera()" expand="full" id="close">
<ion-icon name="close-circle" slot="icon-only"></ion-icon>
</ion-button>
<ion-button (click)="captureImage()" expand="full" id="capture">
<ion-icon name="camera" slot="icon-only"></ion-icon>
</ion-button>
<ion-button (click)="flipCamera()" expand="full" id="flip">
<ion-icon name="repeat" slot="icon-only"></ion-icon>
</ion-button>
</div>
</div>
<ion-img [src]="image" *ngIf="image && !cameraActive"></ion-img>
<ion-button (click)="openCamera()" expand="full" *ngIf="!cameraActive">Open Camera</ion-button>
<ion-button (click)="stopCamera()" expand="full" *ngIf="cameraActive">Open Camera</ion-button>
</ion-content>
camera.scss
ion-content {
--background: transparent !important;
}
.overlay {
position: absolute;
width: 100%;
height: 100%;
z-index: 10;
}
.cameraPreview {
display: flex;
position: absolute;
width: 100%;
height: 100%;
}
.image-overlay {
z-index: 1;
position: absolute;
left: 25%;
top: 25%;
width: 50%;
}
#capture {
position: absolute;
bottom: 30px;
left: calc(50% - 25px);
width: 50px;
height: 50px;
z-index: 11;
}
#close {
position: absolute;
bottom: 30px;
left: calc(50% - 175px);
width: 50px;
height: 50px;
z-index: 11;
}
#flip {
position: absolute;
bottom: 30px;
left: calc(50% + 125px);
width: 50px;
height: 50px;
z-index: 11;
}
#close::part(native) {
border-radius: 30px;
}
#capture::part(native) {
border-radius: 30px;
}
#flip::part(native) {
border-radius: 30px;
}

Use:
import { CameraPreview, CameraPreviewPictureOptions } from '#capacitor-community/camera-preview'
instead of:
import { CameraPreviewOptions, CameraPreviewPictureOptions } from '#capacitor-community/camera-preview'

Related

Ionic 2 app.scss issue

I have been working on an ionic 2 app for a month. I usually test in on Android and it was working perfectly fine. I just ran on IOS, and the design is very wrong. It looks like it is not reading the app.scss file which I use for global CSS classes. Any idea what is the issue ?
This is a sample of the app.scss file
/***** Validation *****/
.error {
background-color: $red;
margin-top: 15px;
margin-bottom: 15px;
padding: 10px 10px 10px 10px;
color: white;
}
.error ion-icon {
padding-right: 5px;
}
/***** Loading *****/
ion-spinner {
position: absolute;
left: 50%;
top: 50%;
.z-index {
z-index: 2;
}
}
/***** Menu *****/
.header-md::after, .tabs-md[tabsPlacement="top"] > .tabbar::after, .footer-md::before, .tabs-md[tabsPlacement="bottom"] > .tabbar::before {
background-image: none;
}
ion-header {
.navbar {
padding: 0;
box-shadow: 0 4px 2px -2px #aeaeae;
}
.navbarSection {
padding: 8px 8px 0px 8px;
}
.menuSection {
text-align: left;
button:hover,
button {
color: white !important;
div {
margin-left: 10px;
}
}
}
.titleSection {
text-align: center;
ion-title h5 {
font-size: 14px;
color: white;
}
}
.buttonsSection {
text-align: right;
button, button:hover {
background-color: #ffffff !important;
color: $black;
font-weight: bolder;
text-transform: none;
font-size: 12px;
}
ion-icon {
padding-left: 10px;
padding-right: 10px;
font-size: 16px;
}
}
.categoriesSection {
background-color: white;
height: 42px;
.filterSection {
div {
display: inline-block;
}
.filter-icon {
color: $blue;
margin-left: 15px;
font-weight: bolder;
}
.filter-searchbar {
position: relative;
margin-left: 10px;
}
}
}
Some of your styles included in app.scss seem to be android specific.
eg:
.header-md::after, .tabs-md[tabsPlacement="top"] > .tabbar::after, .footer-md::before, .tabs-md[tabsPlacement="bottom"] > .tabbar::before {
classes with -md suffix are set only for android. You will have to set similar styles for -ios suffix.
.header-ios::after, .tabs-ios[tabsPlacement="top"] > .tabbar::after, .footer-ios::before, .tabs-ios[tabsPlacement="bottom"] > .tabbar::before {

Consuming a SOAP web service with Swift

I expect an XML SOAP response back from the w3schools.com (http://wwww.w3schools.com/webservices/tempconvert.asmx) example but what I am getting is the pure html of the urlString. I am following an example from http://webindream.com/soap-with-swift/
Thanks for your help
import UIKit
class ViewController: UIViewController, UITextFieldDelegate, NSURLConnectionDelegate, NSXMLParserDelegate {
var mutableData: NSMutableData = NSMutableData.alloc()
var currentElementName: NSString = ""
#IBOutlet weak var txtCelsius: UITextField!
#IBOutlet weak var txtFahrenheit: UITextField!
#IBAction func btnConvert(sender: AnyObject) {
var celsius = txtCelsius.text
var soapMessage = "<?xml version='1.0' encoding='utf-8'?><soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'><soap:Body><CelsiusToFahrenheit xmlns='http://www.w3schools.com/webservices/'><Celsius>\(celsius)</Celsius></CelsiusToFahrenheit></soap:Body></soap:Envelope>"
var urlString = "http://wwww.w3schools.com/webservices/tempconvert.asmx"
var url = NSURL(string: urlString)
var theRequest = NSMutableURLRequest(URL: url!)
var msgLength = String(countElements(soapMessage))
theRequest.addValue("text/xml; charset=utf-8", forHTTPHeaderField: "Content-Type")
theRequest.addValue(msgLength, forHTTPHeaderField: "Content-Length")
theRequest.addValue("http://www.w3schools.com/webservices/CelsiusToFahrenheit", forHTTPHeaderField: "SOAPAction")
theRequest.HTTPMethod = "POST"
theRequest.HTTPBody = soapMessage.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false)
var connection = NSURLConnection(request: theRequest, delegate: self, startImmediately: true)
connection?.start()
if(connection == true) {
var mutableData : Void = NSMutableData.initialize()
}
}
func connection(connection: NSURLConnection!, didReceiveResponse response: NSURLResponse!) {
mutableData.length = 0
}
func connection(connect: NSURLConnection!, didReceiveData data: NSData!) {
mutableData.appendData(data)
}
func connectionDidFinishLoading(connection: NSURLConnection!) {
var xmlParser = NSXMLParser(data: mutableData)
xmlParser.delegate = self
xmlParser.parse()
xmlParser.shouldResolveExternalEntities = true
}
func parser(parser: NSXMLParser!, didStartElement elementName: String!, namespaceURI: String!, qualifiedName qName: String!, attributes attributeDict: NSDictionary!) {
currentElementName = elementName
}
func parser(parser: NSXMLParser!, foundCharacters string: String!) {
println(string)
if currentElementName == "CelsiusToFahrenheitResult" {
txtFahrenheit.text = string
}
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
println("View did Load")
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
edit*
I receive the pure html of the urlString...
<head><link rel="alternate" type="text/xml" href="/webservices/tempconvert.asmx?disco" />
<style type="text/css">
BODY { color: #000000; background-color: white; font-family: Verdana; margin-left: 0px; margin-top: 0px; }
#content { margin-left: 30px; font-size: .70em; padding-bottom: 2em; }
A:link { color: #336699; font-weight: bold; text-decoration: underline; }
A:visited { color: #6699cc; font-weight: bold; text-decoration: underline; }
A:active { color: #336699; font-weight: bold; text-decoration: underline; }
A:hover { color: cc3300; font-weight: bold; text-decoration: underline; }
P { color: #000000; margin-top: 0px; margin-bottom: 12px; font-family: Verdana; }
pre { background-color: #e5e5cc; padding: 5px; font-family: Courier New; font-size: x-small; margin-top: -5px; border: 1px #f0f0e0 solid; }
td { color: #000000; font-family: Verdana; font-size: .7em; }
h2 { font-size: 1.5em; font-weight: bold; margin-top: 25px; margin-bottom: 10px; border-top: 1px solid #003366; margin-left: -15px; color: #003366; }
h3 { font-size: 1.1em; color: #000000; margin-left: -15px; margin-top: 10px; margin-bottom: 10px; }
ul { margin-top: 10px; margin-left: 20px; }
ol { margin-top: 10px; margin-left: 20px; }
li { margin-top: 10px; color: #000000; }
font.value { color: darkblue; font: bold; }
font.key { color: darkgreen; font: bold; }
font.error { color: darkred; font: bold; }
.heading1 { color: #ffffff; font-family: Tahoma; font-size: 26px; font-weight: normal; background-color: #003366; margin-top: 0px; margin-bottom: 0px; margin-left: -30px; padding-top: 10px; padding-bottom: 3px; padding-left: 15px; width: 105%; }
.button { background-color: #dcdcdc; font-family: Verdana; font-size: 1em; border-top: #cccccc 1px solid; border-bottom: #666666 1px solid; border-left: #cccccc 1px solid; border-right: #666666 1px solid; }
.frmheader { color: #000000; background: #dcdcdc; font-family: Verdana; font-size: .7em; font-weight: normal; border-bottom: 1px solid #dcdcdc; padding-top: 2px; padding-bottom: 2px; }
.frmtext { font-family: Verdana; font-size: .7em; margin-top: 8px; margin-bottom: 0px; margin-left: 32px; }
.frmInput { font-family: Verdana; font-size: 1em; }
.intro { margin-left: -15px; }
</style>
<title>
TempConvert Web Service
<div id="content">
<p class="heading1">TempConvert</p><br>
<span>
<p class="intro">The following operations are supported. For a formal definition, please review the Service Description. </p>
<ul>
<li>
CelsiusToFahrenheit
</li>
<p>
<li>
FahrenheitToCelsius
</li>
<p>
</ul>
</span>
<span>
</span>
curl -s --header "content-type: text/xml" -d #request.xml http://www.w3school <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><CelsiusToFahrenheitResponse xmlns="http://www.w3schools.com/webservices/"><CelsiusToFahrenheitResult>104</CelsiusToFahrenheitResult></CelsiusToFahrenheitResponse></soap:Body></soap:Envelope>
All you need to do is add ?wsdl at the end of URL http://www.w3schools.com/webservices/tempconvert.asmx?wsdl
PS: You can also generate a Swift Soap Client for this WSDL at:
http://wsdl2swift.com (Disclaimer: I'm the author)

CSS3 custom scroll issue in iphone

I have customize scroll for webkit browsers.
Following is the code for it.
#defaultScroll p {
width: 600px
}
#defaultScroll {
height: 400px;
width: 300px;
overflow-x: scroll;
position: relative;
}
#defaultScroll::-webkit-scrollbar-button {
background: blue;
}
#defaultScroll::-webkit-scrollbar {
width: 12px;
}
#defaultScroll::-webkit-scrollbar-track {
background-color: #ffff00;
border: 1px solid red;
}
#defaultScroll::-webkit-scrollbar-thumb {
background-color: red;
border-radius: 5px;
}
#defaultScroll::-webkit-scrollbar-thumb:hover {
background-color: green;
}
And Here is the demo for it.
It's working fine in all browsers, however only in iphone overflow-x is not visible.
Just added height: 12px for #defaultScroll::-webkit-scrollbar
#defaultScroll::-webkit-scrollbar {
width: 12px;
height: 12px
}
and all was working great.
I came to know that we need to define height for horizontal scrollbar.

images gets weird height on iphone

This is very strange.. If you load my page on an iphone the height of the images gets verrry heigh. But it works fine on a computer or a nexus 7 (= the pictures gets 100% of its parent). Can anyone help me figure out why?
here is the css (all that should affect images is under /--- body ---/):
{
box-sizing: border-box; -webkit-box-sizing:border-box; -moz-box-sizing:border-box;
font-family: 'fonten';
font-weight: 700;
}
html, body
{
margin: 0;
padding: 0;
}
body
{
background-image: url('css/bgnoise.png');
}
/*--------------------------- OTHER -----------------------------------*/
.clearfix:before,
.clearfix:after
{
content:"";
display:table;
}
.clearfix:after
{
clear:both;
}
.clearfix {
zoom:1;
}
a {
cursor: pointer;
text-decoration: none;
color: black;
}
section a:hover {
opacity: 50%;
}
/*--------------------------- HEADER -----------------------------------*/
header {
background: #fff;
margin-bottom: 50px;
}
h1 {
text-align:center;
margin: 0;
padding: 50px;
color:black;
}
.nav {
text-align:center;
text-transform: uppercase;
}
.nav li, ul {
list-style: none;
display: inline-block;
margin: 0;
padding: 0;
margin-bottom: 25px;
letter-spacing: 4px;
color: black;
}
.nav li {
margin-right: 10px;
}
.nav li:last-child {
display: block;
margin-right: 0;
}
.current_page_item a {
color:#fe6330;
}
/*--------------------------- BODY -----------------------------------*/
h3 {
font-size: 1.75em;
text-align: center;
}
h4 {
text-align: center;
font-size: 1.2em;
margin-bottom: 0;
}
.seperator {
height: 2px;
background:black;
width: 40%;
margin:0px auto;
}
.quote {
text-align: center;
padding: 0px 20%;
line-height: 200%;
font-size: 0.85em;
}
.projects {
margin-top: 20px;
max-width: 960px;
margin: 0 auto;
}
.proj {
margin: 20px auto 0 auto;
width: 60%;
}
.proj img {
width: 100%;
height: 100%; //this should make the pics height 100% of its parent
}
/*--------------------------- what i do -----------------------------------*/
.whatido {
background: white;
padding:50px;
}
.dos {
display: table;
margin: 0 auto;
} .dos p {
text-align: center;
}
/*--------------------------- FOOTER -----------------------------------*/
footer{
background: #232323;
color: white;
padding: 50px 0;
}
.footercont {
display: table;
margin: 0 auto;
} .footercont p {
text-align: center;
} .footercont>p>a {
color: white;
font-size: 1.5em;
}
/*--------------------------- FONT -----------------------------------*/
#font-face
{
font-family: 'fonten';
src: url('css/raleway/raleway_thin.ttf'),
url('css/raleway/raleway_thin.otf'),
url('css/raleway/raleway_thin.eot');
}
You're declaring the height in each
<img width="940" height="940" src="http://hmpf.nu/wp-content/uploads/2013/02/test.jpg" class="attachment-full wp-post-image" alt="test">
That's why they're 940 high if you don't set height to auto.
You have stated the widths and heights in the HTML as well as the CSS
<img width="940" height="940" />
Remove these explicit heights from the HTML and only set the height in the CSS.
With responsive deisgn you only need to state that the image width at 100% and the height will automatically be set as the same percentage to keep the images in the correct aspect ratio height:auto is not needed.
.proj img {width:100%;}

GWT CustomScrollPanel example

I found out about GWT's CustomScrollPanel and how you can customize the scroll bar, but I can't find any examples or how to set it up. Are there any examples out there that show custom scrollbars in use?
This is how you would customize the native scrollbars, however you could also develop your own scrollbar classes that implement VerticalScrollbar and HorizontalScrollbar that are a lot more customizable.
Resource (style) definitions:
public class ScrollResourcesContainer {
public interface ScrollPanelResources extends CustomScrollPanel.Resources
{
#Override
#Source( { "ScrollPanel.css", CustomScrollPanel.Style.DEFAULT_CSS } )
CustomScrollPanel.Style customScrollPanelStyle();
}
public interface HorizontalResources extends NativeHorizontalScrollbar.Resources
{
#Override
#Source( { "HorizontalScrollbar.css", NativeHorizontalScrollbar.StyleTransparant.DEFAULT_CSS } )
NativeHorizontalScrollbar.Style nativeHorizontalScrollbarStyle();
}
public interface VerticalResources extends NativeVerticalScrollbar.Resources
{
#Override
#Source( { "VerticalScrollbar.css", NativeVerticalScrollbar.StyleTransparant.DEFAULT_CSS } )
NativeVerticalScrollbar.Style nativeVerticalScrollbarStyle();
}
}
Usage through CustomScrollPanel :
CustomScrollPanel csp = new CustomScrollPanel((ScrollResourcesContainer.ScrollPanelResources) GWT.create(ScrollResourcesContainer.ScrollPanelResources.class));
csp.setHorizontalScrollbar(new NativeHorizontalScrollbar((HorizontalResources) GWT.create(HorizontalResources.class)),
AbstractNativeScrollbar.getNativeScrollbarHeight());
csp.setVerticalScrollbar(new NativeVerticalScrollbar((VerticalResources) GWT.create(VerticalResources.class)),
AbstractNativeScrollbar.getNativeScrollbarWidth());
To get the sleek scrollbars for vertical scrollbar in gwt, you need to add following code in the VerticalScrollbar.css.
Which won't work for IE just like gmail.
/* Turn on a 16x16 scrollbar */
::-webkit-scrollbar {
width: 16px;
height: 16px;
}
/* Turn on single button up on top, and down on bottom */
::-webkit-scrollbar-button:start:decrement,
::-webkit-scrollbar-button:end:increment {
display: block;
}
/* Turn off the down area up on top, and up area on bottom */
::-webkit-scrollbar-button:vertical:start:increment,
::-webkit-scrollbar-button:vertical:end:decrement {
display: none;
}
/* Place The scroll down button at the bottom */
::-webkit-scrollbar-button:end:increment {
background-image: url(images/scroll_cntrl_dwn.png);
}
/* Place The scroll up button at the up */
::-webkit-scrollbar-button:start:decrement {
background-image: url(images/scroll_cntrl_up.png);
}
/* Top area above thumb and below up button */
::-webkit-scrollbar-track-piece:vertical:start {
background-image: url(images/scroll_gutter_top.png), url(images/scroll_gutter_mid.png);
background-repeat: no-repeat, repeat-y;
}
/* Bottom area below thumb and down button */
::-webkit-scrollbar-track-piece:vertical:end {
background-image: url(images/scroll_gutter_btm.png), url(images/scroll_gutter_mid.png);
background-repeat: no-repeat, repeat-y;
background-position: bottom left, 0 0;
}
/* The thumb itself */
::-webkit-scrollbar-thumb:vertical {
height: 56px;
-webkit-border-image: url(images/scroll_thumb.png) 8 0 8 0 stretch stretch;
border-width: 8 0 8 0;
}
If anyone is interested in having the CSS for both vertical/horizontal, this is what I'm using.
HorizontalScrollbar.css
/* ***********
* SCROLLBAR *
* ***********/
.nativeHorizontalScrollbar::-webkit-scrollbar
{
width: 10px;
height: 10px;
}
/* *************
* BUTTON AREA *
* *************/
.nativeHorizontalScrollbar::-webkit-scrollbar-button:horizontal
{
background-color: transparent;
}
/* Increment scroll left/right button. */
.nativeHorizontalScrollbar::-webkit-scrollbar-button:start:decrement,
.nativeHorizontalScrollbar::-webkit-scrollbar-button:end:increment
{
display: block;
width: 10px;
height: 8px;
background-repeat: no-repeat;
background-size: 10px 8px;
}
/* Increment scroll left button. */
.nativeHorizontalScrollbar::-webkit-scrollbar-button:start:decrement
{
background-image: url('images/scroll-left.png');
}
/* Increment scroll right button. */
.nativeHorizontalScrollbar::-webkit-scrollbar-button:end:increment
{
background-image: url('images/scroll-right.png');
}
/* Jump left/right buttons. */
.nativeHorizontalScrollbar::-webkit-scrollbar-button:horizontal:start:increment,
.nativeHorizontalScrollbar::-webkit-scrollbar-button:horizontal:end:decrement
{
display: none;
}
/* ******************
* TRACKING SECTION *
* ******************/
.nativeHorizontalScrollbar::-webkit-scrollbar-track:horizontal
{
background-color: transparent;
}
/* Area between the thumb and the left button. */
.nativeHorizontalScrollbar::-webkit-scrollbar-track-piece:horizontal:start
{
}
/* Area between the thumb and and right button. */
.nativeHorizontalScrollbar::-webkit-scrollbar-track-piece:horizontal:end
{
}
/*
* The tracking area.
* This is the area that the thumb travels along.
*/
.nativeHorizontalScrollbar::-webkit-scrollbar-track-piece
{
background-color: rgba(255, 255, 255, 0.1);
}
/* The tracking piece. */
.nativeHorizontalScrollbar::-webkit-scrollbar-thumb:horizontal
{
height: 15px;
background-color: rgba(255, 255, 255, 0.75);
border: none;
-webkit-border-top-left-radius: 6px;
-webkit-border-top-right-radius: 6px;
-webkit-border-bottom-left-radius: 6px;
-webkit-border-bottom-right-radius: 6px;
-moz-border-radius-topleft: 6px;
-moz-border-radius-topright: 6px;
-moz-border-radius-bottomleft: 6px;
-moz-border-radius-bottomright: 6px;
border-top-left-radius: 6px;
border-top-right-radius: 6px;
border-bottom-left-radius: 6px;
border-bottom-right-radius: 6px;
}
/* ********
* CORNER *
* ********/
.nativeHorizontalScrollbar::-webkit-scrollbar-corner:horizontal
{
background-color: transparent;
}
/* *********
* RESIZER *
* *********/
.nativeHorizontalScrollbar::-webkit-scrollbar-resizer:horizontal
{
background-color: transparent;
}
VerticalScrollbar.css
/* ***********
* SCROLLBAR *
* ***********/
.nativeVerticalScrollbar::-webkit-scrollbar
{
width: 10px;
height: 10px;
}
/* *************
* BUTTON AREA *
* *************/
.nativeVerticalScrollbar::-webkit-scrollbar-button:vertical
{
background-color: transparent;
}
/* Increment scroll up/down buttons. */
.nativeVerticalScrollbar::-webkit-scrollbar-button:start:decrement,
.nativeVerticalScrollbar::-webkit-scrollbar-button:end:increment
{
display: block;
width: 10px;
height: 8px;
background-repeat: no-repeat;
background-size: 10px 8px;
}
/* Increment scroll up button. */
.nativeVerticalScrollbar::-webkit-scrollbar-button:start:decrement
{
background-image: url('images/scroll-up.png');
}
/* Increment scroll down button. */
.nativeVerticalScrollbar::-webkit-scrollbar-button:end:increment
{
background-image: url('images/scroll-down.png');
}
/* Jump up/down buttons. */
.nativeVerticalScrollbar::-webkit-scrollbar-button:vertical:start:increment,
.nativeVerticalScrollbar::-webkit-scrollbar-button:vertical:end:decrement
{
display: none;
}
/* ******************
* TRACKING SECTION *
* ******************/
.nativeVerticalScrollbar::-webkit-scrollbar-track:vertical
{
background-color: transparent;
}
/* Area between the thumb and the up button. */
.nativeVerticalScrollbar::-webkit-scrollbar-track-piece:vertical:start
{
}
/* Area between the thumb and and down button. */
.nativeVerticalScrollbar::-webkit-scrollbar-track-piece:vertical:end
{
}
/*
* The tracking area.
* This is the area that the thumb travels along.
*/
.nativeVerticalScrollbar::-webkit-scrollbar-track-piece
{
background-color: rgba(255, 255, 255, 0.1);
}
/* The tracking piece. */
.nativeVerticalScrollbar::-webkit-scrollbar-thumb:vertical
{
height: 15px;
background-color: rgba(255, 255, 255, 0.75);
border: none;
-webkit-border-top-left-radius: 6px;
-webkit-border-top-right-radius: 6px;
-webkit-border-bottom-left-radius: 6px;
-webkit-border-bottom-right-radius: 6px;
-moz-border-radius-topleft: 6px;
-moz-border-radius-topright: 6px;
-moz-border-radius-bottomleft: 6px;
-moz-border-radius-bottomright: 6px;
border-top-left-radius: 6px;
border-top-right-radius: 6px;
border-bottom-left-radius: 6px;
border-bottom-right-radius: 6px;
}
/* ********
* CORNER *
* ********/
.nativeVerticalScrollbar::-webkit-scrollbar-corner:vertical
{
background-color: transparent;
}
/* *********
* RESIZER *
* *********/
.nativeVerticalScrollbar::-webkit-scrollbar-resizer:vertical
{
background-color: transparent;
}